Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 7956d291fb1fbce1e2f42af4fd161f41 > files > 5

openvas-manager-2.0.3-1.fc15.src.rpm

#!/bin/bash

# This is an implementation of a start-script for OpenVAS Manager.

# Make RedHat happy:
#
# chkconfig: - 92 9
# Description: OpenVAS Manager Daemon
#

### BEGIN INIT INFO
# Provides: openvas-manager
# Required-Start: $local_fs $network $syslog
# Required-Stop: $local_fs $network $syslog
# Default-Start:
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: start|stop|status|restart|condrestart OpenVAS Manager
# Description: control OpenVAS Manager
### END INIT INFO

# Source function library.
. /etc/rc.d/init.d/functions

exec="/usr/sbin/openvasmd"
prog="openvasmd"
progname="openvas-manager"
config=/etc/openvas/openvasmd_log.conf
lockfile=/var/lock/subsys/openvas-manager

[ -e /etc/sysconfig/$progname ] && . /etc/sysconfig/$progname


rh_status() {
	# run checks to determine if the service is running or use generic status
	status -p /var/run/$prog.pid $progname
}

rh_status_q() {
	rh_status >/dev/null 2>&1
}

start() {

	# Build parameters
	[ -n "$MANAGER_LISTEN" ] && PARAMS="$PARAMS --listen=$MANAGER_LISTEN"
	[ -n "$MANAGER_PORT" ]   && PARAMS="$PARAMS --port=$MANAGER_PORT"
	[ -n "$SCANNER_LISTEN" ] && PARAMS="$PARAMS --slisten=$SCANNER_LISTEN"
	[ -n "$SCANNER_PORT" ]   && PARAMS="$PARAMS --sport=$SCANNER_PORT"

	case "$MANAGER_OTP" in 
		yes|YES|true|TRUE)
			PARAMS="$PARAMS --otp"
			;;
	esac


	if [ ! -f /etc/pki/openvas/private/CA/serverkey.pem  ]; then
		echo "Missing client certificate to connect openvas-administrator to openvas-manager."
		echo "Try running: openvas-mkcert-client -n om -i"
		exit 6
	fi

	if [ ! -f /var/lib/openvas/mgr/tasks.db  ]; then
		echo "Missing local NVT cache database."
		echo "Try running: openvasmd --rebuild"
		exit 6
	fi

	echo "Starting $progname:"
	daemon --pidfile=/var/run/$prog.pid $prog $PARAMS
	RETVAL=$?
	echo
	[ $RETVAL -eq 0 ] && touch $lockfile
	return $RETVAL
}

stop() {
	echo -n "Stopping $progname: "
	killproc $prog
	RETVAL=$?
	echo
	[ $RETVAL -eq 0 ] && rm -f $lockfile
	return $RETVAL
}

restart() {
	stop
	start
}


case "$1" in
	start)
		rh_status_q && exit 0
		$1
		;;

	stop)
		rh_status_q || exit 0
		$1
                ;;

	restart)
		$1
		;;

	condrestart|try-restart)
		rh_status_q || exit 0
		$1
		;;

	reload)
		;;

	status)
		status -p /var/run/$prog.pid $progname
                ;;

	*)
		echo "Usage: $0 {start|stop|status|restart|condrestart|reload}"
		exit 1
esac

exit 0