From: Leon M. Busch-George Date: Mon, 16 Oct 2023 03:33:15 +0000 (-0600) Subject: isc-dhcp: adapt to new ipcalc paradigm X-Git-Url: http://git.99rst.org/?a=commitdiff_plain;h=3ad482078b906a07a10b86dbd915d0b0a0b494c0;p=openwrt-packages.git isc-dhcp: adapt to new ipcalc paradigm With #12925, 'BROADCAST' will no longer be set if there is no local broadcast address (rather than holding the global broadcast address). Prepare for the merge but stay compatible with the old version of ipcalc. Signed-off-by: Leon M. Busch-George --- diff --git a/net/isc-dhcp/files/dhcpd.init b/net/isc-dhcp/files/dhcpd.init index 967ba83da..0caffb8a8 100755 --- a/net/isc-dhcp/files/dhcpd.init +++ b/net/isc-dhcp/files/dhcpd.init @@ -374,7 +374,9 @@ gen_dhcp_subnet() { echo " range $START $END;" fi echo " option subnet-mask $netmask;" - if [ "$BROADCAST" != "0.0.0.0" ] ; then + # check for 0.0.0.0 until all active releases of ipcalc.sh omit it + # for small networks: + if [ -n "$BROADCAST" ] && [ "$BROADCAST" != "0.0.0.0" ] ; then echo " option broadcast-address $BROADCAST;" fi if [ "$dynamicdhcp" -eq 0 ] ; then @@ -443,7 +445,7 @@ dhcpd_add() { dhcp_ifs="$dhcp_ifs $ifname" - eval "$(ipcalc.sh $subnet $start $limit)" + ipcalc $subnet $start $limit config_get netmask "$cfg" "netmask" "$NETMASK" config_get leasetime "$cfg" "leasetime"