aboutsummaryrefslogtreecommitdiff
path: root/src/exabgp/exabgp.rc
diff options
context:
space:
mode:
Diffstat (limited to 'src/exabgp/exabgp.rc')
-rwxr-xr-xsrc/exabgp/exabgp.rc43
1 files changed, 43 insertions, 0 deletions
diff --git a/src/exabgp/exabgp.rc b/src/exabgp/exabgp.rc
new file mode 100755
index 0000000..0cf5bee
--- /dev/null
+++ b/src/exabgp/exabgp.rc
@@ -0,0 +1,43 @@
+#!/bin/bash
+
+DAEMON=/usr/bin/${0##*/}
+DAEMON_USER=nobody
+DAEMON_OPTS=/etc/exabgp.conf
+PIDFILE=${PIDFILE:-/run/${0##*/}.pid}
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/${0##*/}
+
+# check pid file
+[[ -r "$PIDFILE" ]] &&
+ read PID < "$PIDFILE" && [[ -n $PID ]] && kill -0 $PID || unset PID
+
+case "$1" in
+ start)
+ stat_busy "Starting ${0##*/} daemon"
+ [[ ! $PID ]] && env exabgp.daemon.daemonize=true \
+ exabgp.log.destination=syslog \
+ exabgp.daemon.user="$DAEMON_USER" \
+ exabgp.daemon.pid="$PIDFILE" "$DAEMON" $DAEMON_OPTS &&
+ add_daemon ${0##*/} && stat_done && exit 0
+ stat_fail
+ ;;
+ stop)
+ stat_busy "Stopping ${0##*/} daemon"
+ [[ $PID ]] && kill $PID &> /dev/null && rm_daemon ${0##*/} && stat_done && exit 0
+ stat_fail
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ exit 0
+ ;;
+ *)
+ echo "usage: ${0##*/} {start|stop|restart}" >&2
+ ;;
+esac
+
+exit 1
+
+# vim:set ts=2 sw=2 ft=sh et: