diff options
Diffstat (limited to 'net-dns/knot/files/knot.init')
-rw-r--r-- | net-dns/knot/files/knot.init | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/net-dns/knot/files/knot.init b/net-dns/knot/files/knot.init new file mode 100644 index 000000000000..0894c2080daf --- /dev/null +++ b/net-dns/knot/files/knot.init @@ -0,0 +1,42 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +command=/usr/sbin/knotd +command_args="-d" +pidfile=/var/run/knot/knot.pid +required_files=/etc/knot/knot.conf +extra_started_commands="reload" +description_reload="Reload configuration and changed zones." + +depend() { + need net +} + +start() { + checkpath -d -m 0750 -o knot:knot /var/run/knot/ /var/lib/knot/ + + ebegin "Starting knot" + start-stop-daemon --start \ + --pidfile $pidfile --exec $command -- $command_args + eend $? +} + +stop() { + ebegin "Stoping knot" + /usr/sbin/knotc stop >/dev/null 2>&1 + # In case remote control is not working + if [ "$?" != 0 ]; then + if [ -f $pidfile ]; then + start-stop-daemon --stop --pidfile $pidfile + fi + fi + ewend $? +} + +reload() { + ebegin "Reloading knot" + /usr/sbin/knotc reload >/dev/null + eend $? +} |