Package: isc-dhcp-client
Version: 4.2.4-3
Severity: important
Tags: patch
Hi,
dhclient-script.kfreebsd refers to undefined variables $metric_arg and
$alias_subnet_arg iwhich should be replaced by their 'alternate value expansion'
equivalents:
* $metric_arg -> ${IF_METRIC:+metric $IF_METRIC}
* $alias_subnet_arg -> ${alias_subnet_mask:+netmask $alias_subnet_mask}
These variables are oversights/remnants from previous changes.
The attached patch should fix the issue.
Thanks for maintaining isc-dhcp in Debian
Peter
-- System Information:
Debian Release: wheezy/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1,
'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 3.2.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages isc-dhcp-client depends on:
ii debianutils 4.3.2
ii iproute 20120521-3
ii isc-dhcp-common 4.2.2.dfsg.1-5+deb70u2
ii libc6 2.13-35
isc-dhcp-client recommends no packages.
Versions of packages isc-dhcp-client suggests:
pn avahi-autoipd <none>
pn resolvconf <none>
-- Configuration Files:
/etc/dhcp/dhclient.conf changed [not included]
-- no debconf information
>From b628d26b45ac88e96e5ce019b09a37f07df0e61e Mon Sep 17 00:00:00 2001
From: Peter Marschall <[email protected]>
Date: Sun, 21 Oct 2012 13:18:21 +0200
Subject: [PATCH 2/2] dhclient-script.kfreebsd: fix undefined $metric_arg and
$alias_subnet_arg
Replace $metric_arg and $alias_subnet_arg by their 'alternate value expansion'
equivalents:
* $metric_arg -> ${IF_METRIC:+metric $IF_METRIC}
* $alias_subnet_arg -> ${alias_subnet_mask:+netmask $alias_subnet_mask}
It looks as if this regression has been introduced in
ed89ff46c4032bc80d8bf25f7990121be6bd8570 and only partially fixed in
1a169bc2929ef9ba449cca80b271084d1b29f201.
Signed-off-by: Peter Marschall <[email protected]>
---
debian/dhclient-script.kfreebsd | 14 ++++++--------
1 file changed, 6 insertions(+), 8 deletions(-)
diff --git a/debian/dhclient-script.kfreebsd b/debian/dhclient-script.kfreebsd
index abd0e78..54cc9de 100644
--- a/debian/dhclient-script.kfreebsd
+++ b/debian/dhclient-script.kfreebsd
@@ -173,9 +173,9 @@ case "$reason" in
if [ -z "$old_ip_address" ] ||
[ "$old_ip_address" != "$new_ip_address" ] ||
[ "$reason" = "BOUND" ] || [ "$reason" = "REBOOT" ]; then
- # FIXME: metric_arg is not defined
ifconfig $interface inet $new_ip_address ${new_subnet_mask:+netmask $new_subnet_mask} \
- ${new_broadcast_address:+broadcast $new_broadcast_address} $mtu_arg $metric_arg $medium
+ ${new_broadcast_address:+broadcast $new_broadcast_address} \
+ $mtu_arg ${IF_METRIC:+metric $IF_METRIC} $medium
route add $new_ip_address 127.1 >/dev/null 2>&1
for router in $new_routers; do
# If the subnet is captive, eg the netmask is /32 but the default
@@ -250,8 +250,7 @@ case "$reason" in
fi
if [ -n "$alias_ip_address" ]; then
- # FIXME: alias_subnet_arg is not defined
- ifconfig $interface inet alias $alias_ip_address $alias_subnet_arg
+ ifconfig $interface inet alias $alias_ip_address ${alias_subnet_mask:+netmask $alias_subnet_mask}
route add $alias_ip_address 127.0.0.1
fi
@@ -263,9 +262,9 @@ case "$reason" in
route delete $alias_ip_address 127.0.0.1 > /dev/null 2>&1
fi
- # FIXME: metric_arg is not defined
ifconfig $interface inet $new_ip_address ${new_subnet_mask:+netmask $new_subnet_mask} \
- ${new_broadcast_address:+broadcast $new_broadcast_address} $mtu_arg $metric_arg $medium
+ ${new_broadcast_address:+broadcast $new_broadcast_address} \
+ $mtu_arg ${IF_METRIC:+metric $IF_METRIC} $medium
sleep 1
@@ -274,8 +273,7 @@ case "$reason" in
if ping -q -c 1 $1; then
if [ x$new_ip_address != x$alias_ip_address ] && \
[ x$alias_ip_address != x ]; then
- # FIXME: alias_subnet_arg is not defined
- ifconfig $interface inet alias $alias_ip_address $alias_subnet_arg
+ ifconfig $interface inet alias $alias_ip_address ${alias_subnet_mask:+netmask $alias_subnet_mask}
route add $alias_ip_address 127.0.0.1
fi
route add $new_ip_address 127.1 >/dev/null 2>&1
--
1.7.10.4