|
#!/bin/bash
#
#
xinetd
This starts and stops xinetd.
#
#
chkconfig:
345 56 50
#
description:
xinetd is
a powerful replacement for inetd.
\
#
xinetd
has access control machanisms,
extensive \
#
logging capabilities, the ability
to make services \
#
available based on time, and
can place \
#
limits on the number of servers
that can be started, \
#
among
other things.
#
#
processname:
/usr/sbin/xinetd
#
config: /etc/sysconfig/network
#
config: /etc/xinetd.conf
#
pidfile: /var/run/xinetd.pid
prog="xinetd"
PATH=/sbin:/bin:/usr/bin:/usr/sbin
#
Source function library.
.
/etc/rc.d/init.d/functions
#
Get config.
test
-f /etc/sysconfig/network
&& . /etc/sysconfig/network
#
Check that networking is up.
[
${NETWORKING} = "yes" ] || exit 0
[
-f /usr/sbin/xinetd
] || exit 1
[
-f /etc/xinetd.conf
] || exit 1
RETVAL=0
start(){
echo -n $"Starting $prog:
"
# Need to get rid of localization
for external services -
# it doesn't make much sense
to have i18n on the server side here
LANG=en_US
LC_TIME=en_US
LC_ALL=en_US
LC_MESSAGES=en_US
LC_NUMERIC=en_US
LC_MONETARY=en_US
LC_COLLATE=en_US
export LANG LC_TIME LC_ALL LC_MESSAGES
LC_NUMERIC LC_MONETARY LC_COLLATE
unset HOME MAIL USER USERNAME
daemon xinetd
-stayalive
-reuse -pidfile
/var/run/xinetd.pid
RETVAL=$?
echo
touch /var/lock/subsys/xinetd
return $RETVAL
}
stop(){
echo -n $"Stopping $prog:
"
killproc
xinetd
RETVAL=$?
echo
rm
-f /var/lock/subsys/xinetd
return $RETVAL
}
reload(){
echo -n $"Reloading configuration:
"
killproc
xinetd -USR2
RETVAL=$?
echo
return $RETVAL
}
restart(){
stop
start
}
condrestart(){
[ -e /var/lock/subsys/xinetd
] && restart
return 0
}
#
See how we were called.
case
"$1" in
start)
start
;;
stop)
stop
;;
status)
status
xinetd
;;
restart)
restart
;;
reload)
reload
;;
condrestart)
condrestart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|reload}"
RETVAL=1
esac
exit
$RETVAL |