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.
sems/pkg/rpm/sems.init

122 lines
2.3 KiB

#!/bin/bash
#
# Startup script for SEMS
# tested under redhat 7.3
#
# chkconfig: - 85 15
# description: SEMS is a SIP Media Server.
#
# processname: sems
### BEGIN INIT INFO
# Provides: sems
# Required-Start: $local_fs $network $syslog
# Required-Stop: $local_fs $network $syslog
# Default-Start:
# Default-Stop: 0 1 6
# Short-Description: SEMS is a SIP Media Server.
# Description: SEMS is a media and application server for SIP based VoIP services.
### END INIT INFO
# Source function library.
. /etc/rc.d/init.d/functions
prog=sems
sems=/usr/sbin/$prog
pidfile=/var/run/$prog.pid
lockfile=/var/lock/subsys/$prog
conffile=/etc/$prog/$prog.conf
OPTIONS=""
# User-defined options and/or overrides of the variables, listed above,
# should go there:
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
RETVAL=0
start() {
echo -n $"Starting $prog: "
# Check user's rights (we need only creating/opening fds
# so we check only effective UID)
if [ $EUID -ne 0 ] ; then
echo -n "not enough rights" && failure && echo
RETVAL=4
return $RETVAL
fi
# check whether SEMS was already started
if pidofproc -p $pidfile > /dev/null 2>&1 ; then
echo -n "already running" && warning && echo
return 0
fi
daemon $sems -P $pidfile -f $conffile $OPTIONS
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch $lockfile
return $RETVAL
}
stop() {
echo -n $"Stopping $prog: "
# Check user's rights (we need only creating/opening fds
# so we check only effective UID)
if [ $EUID -ne 0 ] ; then
echo -n "not enough rights" && failure && echo
RETVAL=4
return $RETVAL
fi
# check whether SEMS is running
if ! pidofproc -p $pidfile > /dev/null 2>&1 ; then
echo -n "not running" && warning && echo
return 0
fi
killproc -p $pidfile 2> /dev/null
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f $lockfile $pidfile
return $RETVAL
}
restart() {
stop
start
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status -p $pidfile $prog
RETVAL=$?
;;
restart|force-reload)
restart
;;
reload)
echo -n $"Reloading $prog: not supported" && failure && echo
RETVAL=3
;;
condrestart|try-restart)
if [ -f $pidfile ] ; then
restart
fi
;;
*)
echo $"Usage: $prog {start|stop|restart|force-reload|condrestart|try-restart|status|help}"
[ "$1" = 'help' ] && RETVAL=0 || RETVAL=2
esac
exit $RETVAL