Skip to content

Commit 4e4986a

Browse files
committed
odhcpd: update to Git HEAD (2025-12-10)
ca00527e5fc3 statefiles: don't write empty hosts files 24b70c5c2ff0 Revert "statefiles: fix escape sequence for broken hostname output" 5203ad13954c statefiles: fix stale pio handling for !ubus a64760b30f67 odhcpd: rename piofolder to piodir 6779344a8c8a statefiles: use tmpfile functions for pio files 9f8abcc662d0 statefiles: rename prefix information functions cb65b83e524e config: move pio json handling to statefiles.c 5b01849cc42c statefiles: add a dirfd helper function eadde3d7dd74 statefiles: add tmp helper functions c29aa7091498 statefiles: fix escape sequence for broken hostname output 00f2d7a4dbe5 dhcpv4: don't send zero IPv6-only preferred option c86d29bb83d6 Revert "dhcpv6-ia: add some noise to the T1 and T2 periods" b062769ab85f Revert "do not delegate ULA prefixes" fd4714bb2dfe do not delegate ULA prefixes 81ea5bfef775 dhcpv6-ia: add some noise to the T1 and T2 periods openwrt/odhcpd@79252ed...ca00527 Signed-off-by: Álvaro Fernández Rojas <[email protected]>
1 parent 46532c9 commit 4e4986a

File tree

2 files changed

+59
-8
lines changed

2 files changed

+59
-8
lines changed

package/network/services/odhcpd/Makefile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ PKG_RELEASE:=1
1212

1313
PKG_SOURCE_PROTO:=git
1414
PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcpd.git
15-
PKG_MIRROR_HASH:=7d2a69c9f514c01c4e520034554fe7da9a9fe065b9bccb9f0c7063f657c5b9fb
16-
PKG_SOURCE_DATE:=2025-12-04
17-
PKG_SOURCE_VERSION:=79252ed0c0c26659a95729da0f2accaa0ddb458d
15+
PKG_MIRROR_HASH:=cce1d4f3c88f4eec0cf8b19429f12e6fc2f47dca9b4d643a31569c1209f8fabc
16+
PKG_SOURCE_DATE:=2025-12-10
17+
PKG_SOURCE_VERSION:=ca00527e5fc3d8d2b8c1a60fbeb6a25e2bf68674
1818

1919
PKG_MAINTAINER:=Álvaro Fernández Rojas <[email protected]>
2020
PKG_LICENSE:=GPL-2.0

package/network/services/odhcpd/files/odhcpd.defaults

Lines changed: 56 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,64 @@
11
#!/bin/sh
22

3+
. /usr/share/libubox/jshn.sh
4+
5+
pio_file_check() {
6+
local file valid
7+
8+
file=$1
9+
valid=0
10+
11+
json_init
12+
json_load_file $file 2> /dev/null
13+
14+
if json_is_a slaac array; then
15+
local keys len
16+
17+
json_select slaac
18+
json_get_keys keys
19+
20+
len=$(echo $keys | wc -w)
21+
if [ $len -gt 0 ]; then
22+
valid=1
23+
fi
24+
fi
25+
26+
echo $valid
27+
}
28+
29+
pio_folder_migrate() {
30+
local piodir piofolder
31+
32+
piofolder=$1
33+
piodir=$2
34+
35+
[ -d $piofolder ] || return
36+
[ -d $piodir ] || mkdir -p $piodir
37+
38+
for file in $piofolder/*; do
39+
[ -e "$file" ] || continue
40+
if [ $(pio_file_check $file) -eq 1 ]; then
41+
mv $file $piodir/odhcpd.pio.$(basename $file)
42+
fi
43+
done
44+
}
45+
346
if [ -n "$(uci -q get dhcp.odhcpd)" ]; then
4-
local commit
5-
local hostsfile
47+
local commit hostsfile piodir piofolder
648

749
commit=0
850

9-
if [ -z "$(uci -q get dhcp.odhcpd.piofolder)" ]; then
10-
uci set dhcp.odhcpd.piofolder=/tmp/odhcpd-piofolder
51+
piodir=$(uci -q get dhcp.odhcpd.piodir)
52+
if [ -z "$piodir" ]; then
53+
piodir=/tmp/odhcpd-piodir
54+
uci set dhcp.odhcpd.piodir=$piodir
55+
commit=1
56+
fi
57+
58+
piofolder=$(uci -q get dhcp.odhcpd.piofolder)
59+
if [ -n "$piofolder" ]; then
60+
pio_folder_migrate $piofolder $piodir
61+
uci delete dhcp.odhcpd.piofolder
1162
commit=1
1263
fi
1364

@@ -78,7 +129,7 @@ set dhcp.odhcpd.maindhcp=$ODHCPDONLY
78129
set dhcp.odhcpd.leasefile=/tmp/odhcpd.leases
79130
set dhcp.odhcpd.leasetrigger=/usr/sbin/odhcpd-update
80131
set dhcp.odhcpd.loglevel=4
81-
set dhcp.odhcpd.piofolder=/tmp/odhcpd-piofolder
132+
set dhcp.odhcpd.piodir=/tmp/odhcpd-piodir
82133
set dhcp.odhcpd.hostsdir=/tmp/hosts
83134
set dhcp.lan.dhcpv4=$V4MODE
84135
set dhcp.lan.dhcpv6=$V6MODE

0 commit comments

Comments
 (0)