aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-support/nss-pam-ldapd/files/nslcd.init
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-support/nss-pam-ldapd/files/nslcd.init')
-rw-r--r--recipes-support/nss-pam-ldapd/files/nslcd.init84
1 files changed, 84 insertions, 0 deletions
diff --git a/recipes-support/nss-pam-ldapd/files/nslcd.init b/recipes-support/nss-pam-ldapd/files/nslcd.init
new file mode 100644
index 00000000..a27b6e00
--- /dev/null
+++ b/recipes-support/nss-pam-ldapd/files/nslcd.init
@@ -0,0 +1,84 @@
+#!/bin/sh
+
+set -x
+
+NAME="nslcd"
+CONFIG="/etc/nslcd.conf"
+DAEMON="/usr/sbin/nslcd"
+DESC="LDAP connection daemon"
+STATEDIR="/var/run/$NAME"
+PIDFILE="$STATEDIR/$NAME.pid"
+
+start()
+{
+ if [ -e $PIDFILE ]; then
+ PIDDIR=/proc/$(cat $PIDFILE)
+ if [ -d ${PIDDIR} ]; then
+ echo "$DESC already running."
+ exit 1
+ else
+ echo "Removing stale PID file $PIDFILE"
+ rm -f $PIDFILE
+ fi
+ fi
+
+ echo -n "Starting $DESC..."
+
+ start-stop-daemon --start --oknodo \
+ --pidfile $PIDFILE --startas $DAEMON
+
+ if [ $? -eq 0 ]; then
+ echo "done."
+ else
+ echo "failed."
+ fi
+}
+
+stop()
+{
+ echo -n "Stopping $DESC..."
+ start-stop-daemon --stop --quiet --pidfile $PIDFILE \
+ --name $NAME
+ if [ $? -eq 0 ]; then
+ echo "done."
+ else
+ echo "failed."
+ fi
+ rm -f $PIDFILE
+}
+
+status()
+{
+ if [ -f $PIDFILE ]; then
+ if $DAEMON --check
+ then
+ echo "$DESC is running (pid `cat $PIDFILE`"
+ else
+ echo "$DESC stopped"
+ fi
+ else
+ echo "$DESC stopped"
+ fi
+}
+
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ restart|force-reload|reload)
+ stop
+ start
+ ;;
+ status)
+ status
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|force-reload|restart|reload|status}"
+ exit 1
+ ;;
+esac
+
+exit 0