diff options
author | Adrian C. (anrxc) <anrxc@sysphere.org> | 2012-11-25 21:24:58 +0100 |
---|---|---|
committer | Adrian C. (anrxc) <anrxc@sysphere.org> | 2012-11-25 21:24:58 +0100 |
commit | 16262790cb6ddacf6c632625cc865e03b1b8671f (patch) | |
tree | 09898d65deef518380915ecdc7575756c9ca8595 /src/dhcp/dhcp6 | |
parent | 7bb1499a7cd539f714bb7f603d7fc0a38fd8a963 (diff) | |
download | rcdscripts-16262790cb6ddacf6c632625cc865e03b1b8671f.tar.xz |
rcdscripts: import first snapshot of rc.d scripts as of 11.25.20122012.11.25
In 30 days these scripts will start dissapearing from official Arch
Linux packages. This is an attempt to conserve them, and keep sysvinit
usable.
Diffstat (limited to 'src/dhcp/dhcp6')
-rwxr-xr-x | src/dhcp/dhcp6 | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/src/dhcp/dhcp6 b/src/dhcp/dhcp6 new file mode 100755 index 0000000..6b4b4d3 --- /dev/null +++ b/src/dhcp/dhcp6 @@ -0,0 +1,57 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/dhcp + +PIDFILE="/var/run/dhcp6.pid" + +if [[ -f $PIDFILE ]]; then + read -r PID < "$PIDFILE" + + # prevent stale pidfiles from hanging around + if [[ ! -d /proc/$PID ]]; then + echo 'pid not found. deleteing stale pidfile' + unset PID + rm -f "$PIDFILE" + fi +fi + +case "$1" in + start) + stat_busy "Starting DHCPv6 Server" + if [[ $PID ]]; then + stat_fail + exit 1 + fi + if /usr/sbin/dhcpd -6 -pf "$PIDFILE" $DHCP6_ARGS; then + add_daemon dhcp6 + stat_done + else + stat_fail + exit 1 + fi + ;; + stop) + stat_busy "Stopping DHCPv6 Server" + if [[ ! $PID ]]; then + stat_fail + exit 1 + fi + if { kill $PID && rm -f "$PIDFILE"; } &>/dev/null; then + rm_daemon dhcp6 + stat_done + else + stat_fail + exit 1 + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac + |