From: Álvaro Fernández Rojas Date: Sat, 15 Nov 2025 07:25:32 +0000 (+0100) Subject: odhcpd: update to Git HEAD (2025-11-14) X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=acdf8a6291639cfab1801dbd49e0f6f038872c1a;p=openwrt%2Fopenwrt.git odhcpd: update to Git HEAD (2025-11-14) d3dc577d7e84 dhcpv6-ia: add missing limits header be7ca7c0792b config: fix memleak during odhcpd reload 366bd81804a6 dhcpv4: update ubus DHCPv4 events/methods 942df078b670 odhcpd: rename dhcpv6_lease->clid[_data|_len] f872ae543e6d odhcpd: rename [lease_cfg|dhcpv4_lease]->ipaddr to ipv4 aa6870be6be4 dhcpv4: use an AVL to store leases f2d3f907e9e0 github: ci: add powerpc arch 62b94b9abac3 github: ci: add cmake build and source directories e523232ba223 github: ci: disable json-c tests 764fda0d05a8 scripts: devel-build: disable json-c tests f13d2cecaebf netlink: fix typo in debug msg fa6e63bb8200 src: fix whitespace issues 2c6a9d6e12d4 vscode: enable indentation detection b6ade2ebc514 odhcpd: add support for "ignore" 77f9a0dad517 statefiles: support per-interface hosts files 9ba4e3e0f5c5 statefiles: don't make hostsfile dependent on statefile be9c9f895ab4 statefiles: don't write expired leases f6f2ef2de045 statefiles: simplify statefiles_write_state6() 940ecbb39161 statefiles: write straight to file in statefiles_write_state4() ebe0b83db6a9 statefiles: correct some comments/variable names 67a6626dd2f5 statefiles: unify host4 writing bf9889dfcd47 statefiles: unify host6 writing 593b6b72927c statefiles: group functions 8b2a62250485 statefiles: add function to write IPv4 hosts 06904ee1d4fb statefiles: simplify state/host file writing bb39f088f3ef statefiles: move dhcpv6_ia_enum_addrs() to odhcpd.c cc614a451f9b statefiles: add dhcpv6_lease to dhcpv6_log_ia_addr() args 8500654e39d5 statefiles: create helper functions to write leases 98276afcff82 statefiles: introduce statefiles_write() 310846535d06 statefiles: use dirfd in dhcpv6_ia_write_statefile() 50c35c3195f2 statefiles: bail early in dhcpv6_ia_write_statefile() 134ec453dd58 statefiles: simplify dhcpv6_ia_write_hostsfile() 7136fbe390a5 dhcpv6-ia: split statefile handling to separate file 2b26df1293c1 src: replace #pragma once with defines 43baf47948c6 src: remove whitespaces at EOL df1824aec66c vscode: add tab settings a89b57fa1786 odhcpd: Implement RFC9762 DHCPv6 PD Preferred flag for PIOs e63ec4001f83 dhcpv4: add support for RFC4361-style clientid 29357349b33a odhcpd: remove the "legacy" option f6ba8004d699 odhcpd: document the "upstream" option 56c06a162a4f odhcpd: document the "ra_advrouter" option e3aaf3312cd5 odhcpd: remove the "ra_management" option 5238defd2c1d odhcpd: remove the "pd_manager" and "pd_cer" options 4f20351c3713 odhcpd: remove the "filter_class" option 869e2231bbc9 config: drop iface_attr_info af446679d112 README.md: add missing options 7d1b081dcb1b dhcpv4: lazy store statefiles https://github.com/openwrt/odhcpd/compare/d44af6dd8f4e...d3dc577d7e84 Signed-off-by: Álvaro Fernández Rojas Link: https://github.com/openwrt/openwrt/pull/20789 --- diff --git a/package/network/services/odhcpd/Makefile b/package/network/services/odhcpd/Makefile index 8d2ba36bbc..defd6c85f5 100644 --- a/package/network/services/odhcpd/Makefile +++ b/package/network/services/odhcpd/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=odhcpd -PKG_RELEASE:=5 +PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcpd.git -PKG_MIRROR_HASH:=7e7b331972ca1e9847c49dd65e37fbb16c9c3b04dec479a1fa6f2b216a5f53f1 -PKG_SOURCE_DATE:=2025-11-04 -PKG_SOURCE_VERSION:=d44af6dd8f4e1dd0d858ae19419057ab4f319310 +PKG_MIRROR_HASH:=2b5f21240010d1374f92800c1aa586edf646566fc1b853f35cda93032779aca4 +PKG_SOURCE_DATE:=2025-11-14 +PKG_SOURCE_VERSION:=d3dc577d7e843b21ecae0b17de4a6cce36b075db PKG_MAINTAINER:=Hans Dedecker PKG_LICENSE:=GPL-2.0 diff --git a/package/network/services/odhcpd/files/odhcpd.defaults b/package/network/services/odhcpd/files/odhcpd.defaults index ac73780a94..76c75b060a 100644 --- a/package/network/services/odhcpd/files/odhcpd.defaults +++ b/package/network/services/odhcpd/files/odhcpd.defaults @@ -2,6 +2,8 @@ if [ -n "$(uci -q get dhcp.odhcpd)" ]; then local commit + local hostsfile + commit=0 if [ -z "$(uci -q get dhcp.odhcpd.piofolder)" ]; then @@ -14,7 +16,23 @@ if [ -n "$(uci -q get dhcp.odhcpd)" ]; then commit=1 fi + hostsfile=$(uci -q get dhcp.odhcpd.hostsfile) + if [ -n "$hostsfile" ]; then + uci delete dhcp.odhcpd.hostsfile + uci set dhcp.odhcpd.hostsdir="$(dirname $hostsfile)" + commit=1 + elif [ -z "$(uci -q get dhcp.odhcpd.hostsdir)" ]; then + uci set dhcp.odhcpd.hostsdir=/tmp/hosts + commit=1 + fi + + if [ "$(uci -q get dhcp.odhcpd.leasefile)" == "/tmp/hosts/odhcpd" ]; then + uci set dhcp.odhcpd.leasefile=/tmp/odhcpd.leases + commit=1 + fi + [ "$commit" -eq 1 ] && uci commit dhcp + exit 0 fi @@ -57,10 +75,11 @@ EOF uci batch <