#!/bin/sh
#
# ldap udp-only DNS server
#
# chkconfig: - 55 45
#
# description: ldapdns is a fast DNS server that uses your LDAP directory\
# for configuration
#
### BEGIN INIT INFO
# Provides: named
# Required-Start: $network $syslog
# Required-Stop: $network $syslog
# Default-Start: 3 5
# Default-Stop: 0 1 2 4 6
# Description: LDAPDNS is a fast DNS server that uses your LDAP directory for configuration
### END INIT INTO
# bugfix for some systems that don't supply /sbin for the PATH
PATH=/sbin:/usr/sbin:/usr/local/sbin:$PATH
export PATH
daemon() {
prog=$1
env UID=$RUN_UID GID=$RUN_GID SUPERVISE=/var/run/$prog.pid $prog
RETVAL=$?
echo 'ok'
return $RETVAL
}
killproc() {
prog=$1
kill `cat /var/run/$prog.pid 2>&1` >/dev/null 2>&1
RETVAL=$?
echo 'ok'
return $RETVAL
}
status() {
prog=$1
if [ -f /var/run/$prog.pid ]; then
if kill -0 `cat /var/run/$prog.pid` >/dev/null 2>&1; then
echo "$prog is running..."
return 0
else
echo "$prog dead but pidfile exists"
return 1
fi
else
echo "$prog is stopped"
return 3
fi
}
if [ -f /etc/sysconfig/ldapdns ]; then
. /etc/sysconfig/network
. /etc/sysconfig/ldapdns
elif [ -f /etc/ldapdns.conf ]; then
. /etc/ldapdns.conf
NETWORKING="yes"
else
exit 0
fi
[ "${NETWORKING}" = "no" ] && exit 0
[ "${CONFIGURED}" = "no" ] && exit 0
export CACHE HANDLERS THREADS HOSTMASTER LDAP_SUFFIX LDAP_HOST LDAP_HOSTS
export IP ROOT LDAP_BINDDN LDAP_SASL LDAP_AUTH_NAME RFC1279 DNSRECORD
export ACCELERATE_CACHE RELATIVE_NAMES LOG
start() {
echo -n "Starting ldapdns: "
daemon ldapdns
}
stop() {
echo -n "Shutting down ldapdns: "
killproc ldapdns
}
restart() {
stop
start
}
reload() {
stop
start
}
case "$1" in
start) start
;;
stop) stop
;;
restart) restart
;;
reload) reload
;;
force-reload) reload
;;
status) status ldapdns
;;
condrestart) restart
;;
*) echo "Usage: $0 {start|stop|restart|status|condrestart}"
exit 1
esac
exit $?
syntax highlighted by Code2HTML, v. 0.9.1