Date: Thu, 2 Dec 2004 20:35:40 GMT From: Sam Leffler <sam@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 66272 for review Message-ID: <200412022035.iB2KZeJN000739@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=66272 Change 66272 by sam@sam_ebb on 2004/12/02 20:34:48 revamp for new world order Affected files ... .. //depot/projects/wifi/etc/rc.d/dhclient#2 edit Differences ... ==== //depot/projects/wifi/etc/rc.d/dhclient#2 (text+ko) ==== @@ -1,13 +1,13 @@ #!/bin/sh # # $NetBSD: dhclient,v 1.8 2002/03/22 04:33:58 thorpej Exp $ -# $FreeBSD: src/etc/rc.d/dhclient,v 1.17 2004/10/07 13:55:25 mtm Exp $ +# $FreeBSD: src/etc/rc.d/dhclient,v 1.16 2004/05/20 14:16:04 mtm Exp $ # # PROVIDE: dhclient # REQUIRE: netif ipfw ipfilter mountcritlocal # BEFORE: NETWORKING -# KEYWORD: nojail +# KEYWORD: FreeBSD nojail # # Note that there no syslog logging of dhclient messages at boot because # dhclient needs to start before services that syslog depends upon do. @@ -20,9 +20,8 @@ rcvar= pidfile="/var/run/${name}.pid" start_precmd="dhclient_prestart" -start_postcmd="dhclient_poststart" -stop_precmd="dhclient_prestop" -stop_postcmd="dhclient_poststop" +start_cmd="dhclient_start" +stop_cmd="dhclient_stop" dhclient_common() { @@ -47,67 +46,45 @@ if [ $dhclient_common_error -eq 1 ]; then return 1 fi - for ifn in ${_cooked_list}; do - ifscript_up ${ifn} - done if checkyesno background_dhclient; then - rc_flags="${rc_flags} -nw" + rc_flags="${rc_flags} -b" fi - rc_flags="${rc_flags} ${_cooked_list}" return 0 } -dhclient_poststart() +dhclient_start() { for ifn in ${_cooked_list}; do + ifscript_up ${ifn} + + ${dhclient_program} ${rc_flags} $ifn > /dev/null 2>&1 + ifalias_up ${ifn} ipx_up ${ifn} - ifconfig ${ifn} + + checkyesno background_dhclient || ifconfig ${ifn} done } -dhclient_prestop() +dhclient_stop() { if [ $dhclient_common_error -eq 1 ]; then return 1 fi for ifn in ${_cooked_list}; do + ifconfig $ifn down # signal dhclient + ipx_down ${ifn} ifalias_down ${ifn} - done - echo -n "Releasing DHCP leases:" - for ifn in $_cooked_list ; do - ${command} -r $ifn - if [ $? -eq 0 ]; then - echo -n " $ifn" - else - _fail="$_fail $ifn" - fi - done - echo '.' - debug "The following leases failed to release: $_fail" -} + ifconfig_down ${ifn} -dhclient_poststop() -{ - for ifn in ${_cooked_list}; do ifscript_down ${ifn} done } -if [ -n "$2" ]; then - _cmdifn="$2" - stop_cmd=":" -fi - load_rc_config $name dhclient_common_error=0 dhclient_common || dhclient_common_error=1; -if [ -n "$_cooked_list" ]; then - if [ -s $pidfile ]; then - stop_cmd=":" - fi -fi run_rc_command "$1"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200412022035.iB2KZeJN000739>