dhclient-script will reload a module

From: Andrew Thompson <thompsa_at_FreeBSD.org>
Date: Sun, 1 Jul 2007 16:10:55 +1200
Hi,


Recently ifconfig was given the -n flag to suppress module loading so the
userland teardown scripts did not cause a module to load again. This is
still happening when dhcp is used as dhclient calls ifconfig internally.
The following patch addresses that, any objections?


Andrew


Index: dhclient-script
===================================================================
RCS file: /home/ncvs/src/sbin/dhclient/dhclient-script,v
retrieving revision 1.16
diff -u -p -r1.16 dhclient-script
--- dhclient-script	13 Apr 2007 15:07:10 -0000	1.16
+++ dhclient-script	1 Jul 2007 04:06:02 -0000
_at__at_ -22,6 +22,7 _at__at_
 ARP=/usr/sbin/arp
 AWK=/usr/bin/awk
 HOSTNAME=/bin/hostname
+IFCONFIG='/sbin/ifconfig -n'
 NETSTAT=/usr/bin/netstat
 
 LOCALHOST=127.0.0.1
_at__at_ -55,11 +56,11 _at__at_ arp_flush() {
 }
 
 delete_old_address() {
-	eval "ifconfig $interface inet -alias $old_ip_address $medium"
+	eval "$IFCONFIG $interface inet -alias $old_ip_address $medium"
 }
 
 add_new_address() {
-	eval "ifconfig $interface \
+	eval "$IFCONFIG $interface \
 		inet $new_ip_address \
 		netmask $new_subnet_mask \
 		broadcast $new_broadcast_address \
_at__at_ -73,14 +74,14 _at__at_ add_new_address() {
 
 delete_old_alias() {
 	if [ -n "$alias_ip_address" ]; then
-		ifconfig $interface inet -alias $alias_ip_address > /dev/null 2>&1
+		$IFCONFIG $interface inet -alias $alias_ip_address > /dev/null 2>&1
 		#route delete $alias_ip_address $LOCALHOST > /dev/null 2>&1
 	fi
 }
 
 add_new_alias() {
 	if [ -n "$alias_ip_address" ]; then
-		ifconfig $interface inet alias $alias_ip_address netmask \
+		$IFCONFIG $interface inet alias $alias_ip_address netmask \
 		    $alias_subnet_mask
 		#route add $alias_ip_address $LOCALHOST
 	fi
_at__at_ -276,14 +277,14 _at__at_ fi
 
 case $reason in
 MEDIUM)
-	eval "ifconfig $interface $medium"
-	eval "ifconfig $interface inet -alias 0.0.0.0 $medium" >/dev/null 2>&1
+	eval "$IFCONFIG $interface $medium"
+	eval "$IFCONFIG $interface inet -alias 0.0.0.0 $medium" >/dev/null 2>&1
 	sleep 1
 	;;
 
 PREINIT)
 	delete_old_alias
-	ifconfig $interface inet 0.0.0.0 netmask 0.0.0.0 broadcast 255.255.255.255 up
+	$IFCONFIG $interface inet 0.0.0.0 netmask 0.0.0.0 broadcast 255.255.255.255 up
 	;;
 
 ARPCHECK|ARPSEND)
_at__at_ -346,7 +347,7 _at__at_ TIMEOUT)
 			fi
 		fi
 	fi
-	eval "ifconfig $interface inet -alias $new_ip_address $medium"
+	eval "$IFCONFIG $interface inet -alias $new_ip_address $medium"
 	delete_old_routes
 	exit_with_hooks 1
 	;;
Received on Sun Jul 01 2007 - 02:10:58 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:13 UTC