69 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
#!/bin/bash
 | 
						|
# Begin services/dhcpcd
 | 
						|
 | 
						|
# Origianlly dased upon lfs-bootscripts-1.12 $NETWORK_DEVICES/if{down,up}
 | 
						|
# Rewritten by Nathan Coulson <nathan@linuxfromscratch.org>
 | 
						|
# Adapted for dhcpcd by DJ Lucas <dj@linuxfromscratch.org>
 | 
						|
# Update for LFS 7.0 by Bruce Dubbs <bdubbs@linuxfromscratch,org>
 | 
						|
 | 
						|
# Call with: IFCONFIG=<filename> /lib/services/dhcpcd <IFACE> <up | down>
 | 
						|
 | 
						|
#$LastChangedBy: bdubbs $
 | 
						|
#$Date: 2012-04-09 14:48:51 -0500 (Mon, 09 Apr 2012) $
 | 
						|
 | 
						|
. /lib/lsb/init-functions
 | 
						|
. $IFCONFIG
 | 
						|
 | 
						|
pidfile="/var/run/dhcpcd-$1.pid"
 | 
						|
 | 
						|
case "$2" in
 | 
						|
    up)
 | 
						|
       # Cosmetic output not needed for multiple services
 | 
						|
       if ! $(echo ${SERVICE} | grep -q " "); then
 | 
						|
         log_info_msg2 "\n" # Terminate the previous message
 | 
						|
       fi
 | 
						|
    
 | 
						|
       log_info_msg "Starting dhcpcd on the $1 interface..."
 | 
						|
 | 
						|
       # Test to see if there is a stale pid file
 | 
						|
       if [ -f "$pidfile" ]; then
 | 
						|
          ps `cat "$pidfile"` | grep dhcpcd > /dev/null
 | 
						|
 | 
						|
          if [ $? != 0 ]; then
 | 
						|
             rm -f /var/run/dhcpcd-$1.pid > /dev/null
 | 
						|
          
 | 
						|
          else
 | 
						|
             log_warning_msg "dhcpcd is already running!"
 | 
						|
             exit 2
 | 
						|
          fi
 | 
						|
       fi
 | 
						|
 | 
						|
       /sbin/dhcpcd $1 $DHCP_START
 | 
						|
       evaluate_retval
 | 
						|
       ;;
 | 
						|
 | 
						|
     down)
 | 
						|
       log_info_msg "Stopping dhcpcd on the $1 interface..."
 | 
						|
 | 
						|
       if [ -z "$DHCP_STOP" ]; then
 | 
						|
          killproc -p "${pidfile}" /sbin/dhcpcd
 | 
						|
 | 
						|
       else
 | 
						|
          /sbin/dhcpcd $1 $DHCP_STOP &> /dev/null
 | 
						|
 | 
						|
          if [ "$?" -eq 1 ]; then
 | 
						|
             log_warning_msg "dhcpcd not running!"
 | 
						|
             exit 2
 | 
						|
          fi
 | 
						|
       fi
 | 
						|
 | 
						|
       evaluate_retval
 | 
						|
       ;;
 | 
						|
 | 
						|
     *)
 | 
						|
       echo "Usage: $0 [interface] {up|down}"
 | 
						|
       exit 1
 | 
						|
       ;;
 | 
						|
esac
 | 
						|
 | 
						|
# End services/dhcpcd
 |