You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ublinux-init/ublinux/rc.d/init.d/ntlmaps

114 lines
2.8 KiB

#!/bin/sh
#
# Polipo Startup script for the NTLM Authorization Proxy Server
#
# chkconfig: - 95 15
# description: NTLMAPS is a proxy-like software, that will authorize you at MS proxy server\
# and at web servers (ISS especially) using MS proprietary NTLM authorization method
# processname: ntlmaps
### BEGIN INIT INFO
# Provides: ntlmaps
# Required-Start: $local_fs $network $named winbind
# Required-Stop: $local_fs $network $named winbind
# Short-Description: NTLM Authorization Proxy Server
# Default-Start: 3 4 5
# Description: NTLMAPS is a proxy-like software, that will authorize you at MS proxy server
# and at web servers (ISS especially) using MS proprietary NTLM authorization method.
### END INIT INFO
# Source function library.
. /lib/lsb/init-functions
# Source networking configuration
[ -f /etc/ublinux/network ] && . /etc/ublinux/network
STATUS=status
[ -f /etc/init.d/functions ] || STATUS=status_of_proc
GPRINTF=gprintf
[ -f /etc/init.d/functions ] || GPRINTF=log_daemon_msg
ntlmaps=${NTLMAPS-/usr/share/ntlmaps/ntlmaps}
prog=ntlmaps
config=${CONFIG-/etc/ntlmaps.cfg}
pidfile=${PIDFILE-/var/run/ntlmaps.pid}
lockfile=${LOCKFILE-/var/lock/subsys/ntlmaps}
logdir=${LOGDIR-/var/log/ntlmaps}
pwddir=$PWD
port=5865
TIMEOUT=${TIMEOUT-10}
RETVAL=0
start() {
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 1
[ -x $ntlmaps ] || exit 1
[ `id -u` -ne 0 ] && exit 4
# check if the config is present
[ -f $config ] || exit 6
[ -f $pidfile ] && exit 1
[ -d $logdir ] || mkdir $logdir
chmod 700 $logdir
cd $logdir
$GPRINTF "Starting ntlmaps: " "$prog"
start_daemon $ntlmaps -c $config </dev/null >/dev/null 2>/dev/null &
while [ "$TIMEOUT" != "0" ] ;do
PRPID=$(/usr/sbin/lsof 2>/dev/null| grep ":$port .LISTEN." | awk '{print $2}')
[ -z "$PRPID" ] || break
sleep 1
TIMEOUT=$(( $TIMEOUT - 1 ))
done
if [ "$PRPID" = "" ] ;then
RETVAL=1
log_failure_msg
else
RETVAL=0
log_success_msg
touch ${lockfile}
echo -ne $PRPID > ${pidfile}
fi
echo
cd $pwddir
return $RETVAL
}
stop() {
$GPRINTF "Stopping ntlmaps: " "$prog"
PRPID=$(cat $pidfile 2>/dev/null)
if [ "$PRPID" = "" ] ;then
log_failure_msg
else
kill $PRPID >/dev/null 2>&1 && log_success_msg || log_failure_msg
fi
echo
rm -f ${lockfile} ${pidfile} 2>/dev/null
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
$STATUS -p ${pidfile} $prog
RETVAL=$?
;;
restart)
stop
start
;;
condrestart|try-restart)
if $STATUS -p ${pidfile} $ntlmaps >&/dev/null; then
stop
start
fi
;;
*)
echo "Usage: $prog {start|stop|restart|condrestart|status}"
RETVAL=3
esac
exit $RETVAL