Am 20.02.2024 um 14:14 schrieb Paul D:
Could you show an example of this?
I modified /usr/lib/dnsmasq/dhcp-script.sh to see additional variables in the
syslog:
--- dhcp-script.sh.orig 2024-02-14 16:22:53.000000000 +0100
+++ dhcp-script.sh 2024-02-20 22:55:33.000000000 +0100
@@ -50,4 +50,7 @@ esac
json_close_array env
-[ -n "$hotplugobj" ] && ubus call hotplug.${hotplugobj} call "$(json_dump)"
+[ -n "$hotplugobj" ] && {
+ logger -t dhcp-script "ubus call hotplug.${hotplugobj} call
\"$(json_dump)\""
+ ubus call hotplug.${hotplugobj} call "$(json_dump)"
+}
'logread -e 192.168.104.82' with HOSTNAME empty shows:
Tue Feb 20 23:14:33 2024 user.notice dhcp-script: ubus call hotplug.dhcp call "{ "env": [
"MACADDR=aa:aa:aa:aa:aa:aa", "IPADDR=192.168.104.82", "ACTION=update", "HOSTNAME=" ] }"
Tue Feb 20 23:14:33 2024 user.notice dhcp-script: ubus call hotplug.dhcp call "{ "env": [
"MACADDR=aa:aa:aa:aa:aa:aa", "IPADDR=192.168.104.82", "ACTION=update", "HOSTNAME=" ] }"
Tue Feb 20 23:14:34 2024 user.notice nft-qos-monitor: ACTION=update,
MACADDR=aa:aa:aa:aa:aa:aa, IPADDR=192.168.104.82, HOSTNAME=WLAN-DSL9
Tue Feb 20 23:14:34 2024 user.notice dhcp-script: ubus call hotplug.neigh call "{ "env": [
"MACADDR=aa:aa:aa:aa:aa:aa", "IPADDR=192.168.104.82", "ACTION=add" ] }"
Tue Feb 20 23:14:34 2024 user.notice nft-qos-dynamic: ACTION=update,
MACADDR=aa:aa:aa:aa:aa:aa, IPADDR=192.168.104.82, HOSTNAME=WLAN-DSL9
Tue Feb 20 23:14:35 2024 user.notice dhcp-script: ubus call hotplug.neigh call "{ "env": [
"MACADDR=aa:aa:aa:aa:aa:aa", "IPADDR=192.168.104.82", "ACTION=add" ] }"
Tue Feb 20 23:14:35 2024 user.notice nft-qos-monitor: ACTION=update,
MACADDR=aa:aa:aa:aa:aa:aa, IPADDR=192.168.104.82, HOSTNAME=WLAN-DSL9
Tue Feb 20 23:14:36 2024 user.notice nft-qos-dynamic: ACTION=update,
MACADDR=aa:aa:aa:aa:aa:aa, IPADDR=192.168.104.82, HOSTNAME=WLAN-DSL9
'logread -e 192.168.104.84' with HOSTNAME set shows:
Tue Feb 20 23:14:34 2024 user.notice dhcp-script: ubus call hotplug.dhcp call "{ "env": [
"MACADDR=bb:bb:bb:bb:bb:bb", "IPADDR=192.168.104.84", "ACTION=update", "HOSTNAME=raspberrypi2" ]
}"
Tue Feb 20 23:14:34 2024 user.notice dhcp-script: ubus call hotplug.neigh call "{ "env": [
"MACADDR=bb:bb:bb:bb:bb:bb", "IPADDR=192.168.104.84", "ACTION=add" ] }"
Tue Feb 20 23:14:35 2024 user.notice dhcp-script: ubus call hotplug.neigh call "{ "env": [
"MACADDR=bb:bb:bb:bb:bb:bb", "IPADDR=192.168.104.84", "ACTION=add" ] }"
Tue Feb 20 23:14:36 2024 user.notice nft-qos-monitor: ACTION=update,
MACADDR=bb:bb:bb:bb:bb:bb, IPADDR=192.168.104.84, HOSTNAME=raspberrypi2
Tue Feb 20 23:14:36 2024 user.notice nft-qos-dynamic: ACTION=update,
MACADDR=bb:bb:bb:bb:bb:bb, IPADDR=192.168.104.84, HOSTNAME=raspberrypi2
WLAN-DSL9 is the router name:
root@WLAN-DSL9:~# echo $HOSTNAME
WLAN-DSL9
If I replace HOSTNAME by DHCP_HOSTNAME in /usr/lib/dnsmasq/dhcp-script.sh,
/etc/hotplug.d/dhcp/00-nft-qos-monitor and
/etc/hotplug.d/dhcp/01-nft-qos-dynamic, I get the following output:
Tue Feb 20 23:44:43 2024 user.notice dhcp-script: ubus call hotplug.dhcp call "{ "env": [
"MACADDR=aa:aa:aa:aa:aa:aa", "IPADDR=192.168.104.82", "ACTION=update", "DHCP_HOSTNAME=" ] }"
Tue Feb 20 23:44:43 2024 user.notice dhcp-script: ubus call hotplug.dhcp call "{ "env": [
"MACADDR=aa:aa:aa:aa:aa:aa", "IPADDR=192.168.104.82", "ACTION=update", "DHCP_HOSTNAME=" ] }"
Tue Feb 20 23:44:44 2024 user.notice nft-qos-monitor: ACTION=update,
MACADDR=aa:aa:aa:aa:aa:aa, IPADDR=192.168.104.82, DHCP_HOSTNAME=
Tue Feb 20 23:44:44 2024 user.notice dhcp-script: ubus call hotplug.neigh call "{ "env": [
"MACADDR=aa:aa:aa:aa:aa:aa", "IPADDR=192.168.104.82", "ACTION=add" ] }"
Tue Feb 20 23:44:44 2024 user.notice nft-qos-dynamic: ACTION=update,
MACADDR=aa:aa:aa:aa:aa:aa, IPADDR=192.168.104.82, DHCP_HOSTNAME=
Tue Feb 20 23:44:45 2024 user.notice dhcp-script: ubus call hotplug.neigh call "{ "env": [
"MACADDR=aa:aa:aa:aa:aa:aa", "IPADDR=192.168.104.82", "ACTION=add" ] }"
Tue Feb 20 23:44:45 2024 user.notice nft-qos-monitor: ACTION=update,
MACADDR=aa:aa:aa:aa:aa:aa, IPADDR=192.168.104.82, DHCP_HOSTNAME=
Tue Feb 20 23:44:46 2024 user.notice nft-qos-dynamic: ACTION=update,
MACADDR=aa:aa:aa:aa:aa:aa, IPADDR=192.168.104.82, DHCP_HOSTNAME=
If procd generates the hotplug call, it filters out empty variables. From procd
hotplug-dispatch.c line 239:
*tmp = '\0';
if (validate_envvarname(enve))
continue;
*tmp = '=';
if (!strlen(++tmp))
continue;
Regards,
Hartmut
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel