Home | History | Annotate | Download | only in src
      1 #!/bin/bash
      2 #
      3 # mcstransd        This starts and stops mcstransd
      4 #
      5 # chkconfig: - 08 87
      6 # description: This starts the SELinux Context Translation System Daemon
      7 #
      8 # processname: /sbin/mcstransd
      9 # pidfile: /var/run/mcstransd.pid
     10 #
     11 # Return values according to LSB for all commands but status:
     12 # 0 - success
     13 # 1 - generic or unspecified error
     14 # 2 - invalid or excess argument(s)
     15 # 3 - unimplemented feature (e.g. "reload")
     16 # 4 - insufficient privilege
     17 # 5 - program is not installed
     18 # 6 - program is not configured
     19 # 7 - program is not running
     20 
     21 PATH=/sbin:/bin:/usr/bin:/usr/sbin
     22 prog="mcstransd"
     23 lockfile=/var/lock/subsys/$prog
     24 
     25 # Source function library.
     26 . /etc/init.d/functions
     27 
     28 # Allow anyone to run status
     29 if [ "$1" = "status" ] ; then
     30 	status $prog
     31 	RETVAL=$?
     32 	exit $RETVAL
     33 fi
     34 
     35 # Check that we are root ... so non-root users stop here
     36 test $EUID = 0  || exit 4
     37 
     38 # If selinux is not enabled, return success
     39 test -x /usr/sbin/selinuxenabled && /usr/sbin/selinuxenabled || exit 0
     40 
     41 RETVAL=0
     42 
     43 start(){
     44 	test -x /sbin/mcstransd  || exit 5
     45 	echo -n $"Starting $prog: "
     46 	if status $prog > /dev/null; then
     47 		echo -n $"$prog: already running"
     48 		failure
     49 		echo
     50 		return 1
     51 	fi
     52 
     53 	unset HOME MAIL USER USERNAME
     54 	daemon $prog "$EXTRAOPTIONS"
     55 	RETVAL=$?
     56 	echo
     57 	if test $RETVAL = 0 ; then
     58         	touch $lockfile
     59 	fi
     60 	return $RETVAL
     61 }
     62 
     63 stop(){
     64 	echo -n $"Stopping $prog: "
     65 	killproc $prog
     66 	RETVAL=$?
     67 	echo
     68 	rm -f $lockfile
     69 	return $RETVAL
     70 }
     71 
     72 restart(){
     73 	stop
     74 	start
     75 }
     76 
     77 condrestart(){
     78 	[ -e $lockfile ] && restart
     79 	return 0
     80 }
     81 
     82 
     83 # See how we were called.
     84 case "$1" in
     85     start)
     86 	start
     87 	;;
     88     stop)
     89 	stop
     90 	;;
     91     restart|force-reload)
     92 	restart
     93 	;;
     94     condrestart)
     95 	condrestart
     96 	;;
     97     *)
     98 	echo $"Usage: $0 {start|stop|status|restart|force-reload|condrestart}"
     99 	RETVAL=3
    100 esac
    101 
    102 exit $RETVAL
    103