summaryrefslogtreecommitdiff
path: root/testing/dhcp/dhcp6
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-07-30 00:02:11 +0000
committerroot <root@rshg054.dnsready.net>2012-07-30 00:02:11 +0000
commit4982c269b318734d01ad30c6592fbb73565ceb12 (patch)
treef8696db6a843a65a264dbfed979f087b1d62c011 /testing/dhcp/dhcp6
parentddab05fd84b7fa1d67fcd18b532f0427189d8df1 (diff)
Mon Jul 30 00:02:11 UTC 2012
Diffstat (limited to 'testing/dhcp/dhcp6')
-rw-r--r--testing/dhcp/dhcp657
1 files changed, 57 insertions, 0 deletions
diff --git a/testing/dhcp/dhcp6 b/testing/dhcp/dhcp6
new file mode 100644
index 000000000..6b4b4d359
--- /dev/null
+++ b/testing/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
+