Re: dhclient-script will reload a module

From: Brooks Davis <brooks_at_freebsd.org>
Date: Mon, 2 Jul 2007 10:48:45 -0500
On Sun, Jul 01, 2007 at 04:10:55PM +1200, Andrew Thompson wrote:
> 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?

Looks fine to me (I think -n should be the default).

-- Brooks

> 
> 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
>  	;;
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
> 

Received on Mon Jul 02 2007 - 14:07:59 UTC

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