Home | History | Annotate | Line # | Download | only in rc.d
dhcpcd revision 1.1.12.1
      1       1.1   roy #!/bin/sh
      2       1.1   roy 
      3       1.1   roy # PROVIDE: dhcpcd
      4       1.1   roy # REQUIRE: network mountcritlocal
      5       1.1   roy # BEFORE:  NETWORKING
      6       1.1   roy 
      7       1.1   roy $_rc_subr_loaded . /etc/rc.subr
      8       1.1   roy 
      9       1.1   roy name=dhcpcd
     10       1.1   roy rcvar=$name
     11       1.1   roy command=/sbin/$name
     12  1.1.12.1  yamt extra_commands="reload"
     13       1.1   roy 
     14       1.1   roy load_rc_config $name
     15  1.1.12.1  yamt 
     16  1.1.12.1  yamt # If the last argument to dhcpcd is a valid interface and the prior argument
     17  1.1.12.1  yamt # is not then dhcpcd will start on one interface only and create a pidfile
     18  1.1.12.1  yamt # based on the interface name. See PR bin/43490.
     19  1.1.12.1  yamt if [ -n "$flags" ]; then
     20  1.1.12.1  yamt 	myflags=$flags
     21  1.1.12.1  yamt else
     22  1.1.12.1  yamt 	eval myflags=\$${name}_flags
     23  1.1.12.1  yamt fi
     24  1.1.12.1  yamt ifname="${myflags##* }"
     25  1.1.12.1  yamt myflags="${myflags%% $ifname}"
     26  1.1.12.1  yamt last_flag="${myflags##* }"
     27  1.1.12.1  yamt if /sbin/ifconfig "$ifname" >/dev/null 2>&1 && 
     28  1.1.12.1  yamt     ! /sbin/ifconfig "$last_flag" >/dev/null 2>&1
     29  1.1.12.1  yamt then
     30  1.1.12.1  yamt 	pidfile=/var/run/$name-"$ifname".pid
     31  1.1.12.1  yamt else
     32  1.1.12.1  yamt 	pidfile=/var/run/$name.pid
     33  1.1.12.1  yamt fi
     34  1.1.12.1  yamt unset myflags ifname last_flag
     35  1.1.12.1  yamt 
     36       1.1   roy run_rc_command "$1"
     37