summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlice H.2025-11-08 04:39:42 +0000
committerRobert Marko2025-11-08 15:30:37 +0000
commit010575c617dfbbe533f19cf358871fe655e5534c (patch)
treea6b3ee5144c1a45e27a4b16316234801f382e8b6
parent412bc7e1d884787ab81c26c751dca5c6c0f416a9 (diff)
downloadopenwrt-010575c617dfbbe533f19cf358871fe655e5534c.tar.gz
base-files: correct global DHCP DUID generation
The old command generates an often incorrect variable length UUID instead of a fixed 16-octet hex string. Ref: https://datatracker.ietf.org/doc/html/rfc8415#section-11.5 Signed-off-by: Alice H. <alice.hall0451+github@gmail.com>
-rw-r--r--package/base-files/files/etc/uci-defaults/14_network-generate-clientid2
1 files changed, 1 insertions, 1 deletions
diff --git a/package/base-files/files/etc/uci-defaults/14_network-generate-clientid b/package/base-files/files/etc/uci-defaults/14_network-generate-clientid
index 70da185c20..11806dd19c 100644
--- a/package/base-files/files/etc/uci-defaults/14_network-generate-clientid
+++ b/package/base-files/files/etc/uci-defaults/14_network-generate-clientid
@@ -2,7 +2,7 @@
uci -q batch <<-EOF >/dev/null
# DUID-UUID - RFC6355
- set network.globals.dhcp_default_duid="$(hexdump -vn 16 -e '"0004" 2/2 "%x"' /dev/urandom)"
+ set network.globals.dhcp_default_duid="$(printf '%s%s' '0004' $(cat /proc/sys/kernel/random/uuid | sed -e 's/-//g'))"
commit network
EOF