2006-12-10 14:29:44 -08:00
|
|
|
{dhcp, nettools}:
|
2006-11-19 14:05:49 -08:00
|
|
|
|
|
|
|
{
|
|
|
|
name = "dhclient";
|
|
|
|
|
|
|
|
job = "
|
|
|
|
description \"DHCP client\"
|
|
|
|
|
2006-11-20 09:28:08 -08:00
|
|
|
start on network-interfaces/started
|
2006-11-20 09:06:44 -08:00
|
|
|
stop on network-interfaces/stop
|
2006-11-19 14:05:49 -08:00
|
|
|
|
2007-02-20 06:20:33 -08:00
|
|
|
env PATH_DHCLIENT_SCRIPT=${dhcp}/sbin/dhclient-script
|
|
|
|
|
2006-11-19 14:05:49 -08:00
|
|
|
script
|
2007-02-20 06:59:29 -08:00
|
|
|
export PATH=${nettools}/sbin:$PATH
|
|
|
|
|
2006-11-24 08:31:01 -08:00
|
|
|
# Determine the interface on which to start dhclient.
|
2006-11-19 14:05:49 -08:00
|
|
|
interfaces=
|
2006-11-24 08:31:01 -08:00
|
|
|
|
2007-02-22 06:06:15 -08:00
|
|
|
for i in $(cd /sys/class/net && ls -d *); do
|
2006-11-24 08:31:01 -08:00
|
|
|
if test \"$i\" != \"lo\"; then
|
2007-02-22 06:06:15 -08:00
|
|
|
echo \"Running dhclient on $i\"
|
2006-11-19 14:05:49 -08:00
|
|
|
interfaces=\"$interfaces $i\"
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
|
|
|
if test -z \"$interfaces\"; then
|
|
|
|
echo 'No interfaces on which to start dhclient!'
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
2006-11-24 08:38:22 -08:00
|
|
|
mkdir -m 755 -p /var/state/dhcp
|
|
|
|
|
2007-02-20 06:59:29 -08:00
|
|
|
exec ${dhcp}/sbin/dhclient -d $interfaces -e \"PATH=$PATH\"
|
2006-11-19 14:05:49 -08:00
|
|
|
end script
|
|
|
|
";
|
|
|
|
|
|
|
|
}
|