blob: 5dc637c6cba48b83eee3fc5f55dcabd2e6629d5f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
type dhclient &> /dev/null || return
dhclient_start() {
local options pidfile="/run/dhclient$1-$Interface.pid"
case $1 in
4) options=$DhclientOptions;;
6) options=$DhclientOptions6;;
*) return 1;;
esac
[[ $2 == "noaddr" ]] && options+=" -S"
rm -f "$pidfile"
if ! do_debug dhclient -$1 -q -e "TIMEOUT=${TimeoutDHCP:-30}" -pf "$pidfile" $options "$Interface"; then
report_error "DHCP IPv$1 lease attempt failed on interface '$Interface'"
return 1
fi
chmod 644 "$pidfile"
}
dhclient_stop() {
local stop="-x" pidfile="/run/dhclient$1-$Interface.pid"
if [[ -f $pidfile ]]; then
is_yes "${DHCPReleaseOnStop:-no}" && stop="-r"
do_debug dhclient -$1 -q $stop "$Interface" -pf "$pidfile" > /dev/null
fi
}
# vim: ft=sh ts=4 et sw=4:
|