Blame etc/initd/initd.suse

Packit Service bca4e3
#!/bin/sh
Packit Service bca4e3
#
Packit Service bca4e3
# Copyright(c) 2010-2011 Intel Corporation. All rights reserved.
Packit Service bca4e3
#
Packit Service bca4e3
# This program is free software; you can redistribute it and/or modify it
Packit Service bca4e3
# under the terms and conditions of the GNU General Public License,
Packit Service bca4e3
# version 2, as published by the Free Software Foundation.
Packit Service bca4e3
#
Packit Service bca4e3
# This program is distributed in the hope it will be useful, but WITHOUT
Packit Service bca4e3
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
Packit Service bca4e3
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
Packit Service bca4e3
# more details.
Packit Service bca4e3
#
Packit Service bca4e3
# You should have received a copy of the GNU General Public License along with
Packit Service bca4e3
# this program; if not, write to the Free Software Foundation, Inc.,
Packit Service bca4e3
# 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
Packit Service bca4e3
#
Packit Service bca4e3
# Maintained at www.Open-FCoE.org
Packit Service bca4e3
#
Packit Service bca4e3
#
Packit Service bca4e3
# Open-FCoE User-Space Software
Packit Service bca4e3
# Based on:
Packit Service bca4e3
#     Template LSB system startup script for example service/daemon FOO
Packit Service bca4e3
#     Copyright (C) 1995--2005  Kurt Garloff, SUSE / Novell Inc.
Packit Service bca4e3
#
Packit Service bca4e3
# /etc/init.d/fcoe         This shell script takes care of starting and stopping
Packit Service bca4e3
#                          of the fcoemon daemon
Packit Service bca4e3
#   and its symbolic link
Packit Service bca4e3
# /sbin/rcfcoe
Packit Service bca4e3
#
Packit Service bca4e3
# chkconfig: 345 20 80
Packit Service bca4e3
#
Packit Service bca4e3
### BEGIN INIT INFO
Packit Service bca4e3
# Provides: fcoe
Packit Service bca4e3
# Required-Start: network
Packit Service bca4e3
# Required-Stop:
Packit Service bca4e3
# Default-Start: 3 5
Packit Service bca4e3
# Default-Stop: 3 5
Packit Service bca4e3
# Description: Open-FCoE Initiator
Packit Service bca4e3
### END INIT INFO
Packit Service bca4e3
Packit Service bca4e3
CONFIG_DIR=/etc/fcoe
Packit Service bca4e3
LOG_FILE="/var/log/fcoemon.log"
Packit Service bca4e3
FCOEMON=/usr/sbin/fcoemon
Packit Service bca4e3
FCOEADM=/usr/sbin/fcoeadm
Packit Service bca4e3
FCOEMON_OPTS=
Packit Service bca4e3
Packit Service bca4e3
. /etc/rc.status
Packit Service bca4e3
rc_reset
Packit Service bca4e3
Packit Service bca4e3
. $CONFIG_DIR/config
Packit Service bca4e3
Packit Service bca4e3
if [ "$USE_SYSLOG" = "yes" ] || [ "$USE_SYSLOG" = "YES" ]; then
Packit Service bca4e3
    FCOEMON_OPTS+=" --syslog"
Packit Service bca4e3
fi
Packit Service bca4e3
Packit Service bca4e3
if [ "$DEBUG" = "yes" ] || [ "$DEBUG" = "YES" ]; then
Packit Service bca4e3
	FCOEMON_OPTS+=" --debug"
Packit Service bca4e3
fi
Packit Service bca4e3
Packit Service bca4e3
test -x $FCOEADM || {
Packit Service bca4e3
	echo "$FCOEADM not installed";
Packit Service bca4e3
	if [ "$1" = "stop" ]; then exit 0;
Packit Service bca4e3
	else
Packit Service bca4e3
		rc_failed
Packit Service bca4e3
		rc_status -v
Packit Service bca4e3
		rc_exit
Packit Service bca4e3
	fi
Packit Service bca4e3
}
Packit Service bca4e3
Packit Service bca4e3
test -x $FCOEMON || {
Packit Service bca4e3
	echo "$FCOEMON not installed";
Packit Service bca4e3
	if [ "$1" = "stop" ]; then exit 0;
Packit Service bca4e3
	else
Packit Service bca4e3
		rc_failed
Packit Service bca4e3
		rc_status -v
Packit Service bca4e3
		rc_exit
Packit Service bca4e3
	fi
Packit Service bca4e3
}
Packit Service bca4e3
Packit Service bca4e3
startup_fcoe_modules()
Packit Service bca4e3
{
Packit Service bca4e3
	modprobe -a $SUPPORTED_DRIVERS > /dev/null 2>&1
Packit Service bca4e3
}
Packit Service bca4e3
Packit Service bca4e3
start()
Packit Service bca4e3
{
Packit Service bca4e3
	echo -n $"Starting FCoE initiator service: "
Packit Service bca4e3
Packit Service bca4e3
	pid=$($FCOEADM -p 2> /dev/null)
Packit Service bca4e3
	if [ -z "$pid" ] ; then
Packit Service bca4e3
	    startup_fcoe_modules
Packit Service bca4e3
Packit Service bca4e3
	    startproc -l ${LOG_FILE} ${FCOEMON} ${FCOEMON_OPTS}
Packit Service bca4e3
	else
Packit Service bca4e3
	    echo -n "(already running)"
Packit Service bca4e3
	    rc_reset
Packit Service bca4e3
	fi
Packit Service bca4e3
	rc_status -v
Packit Service bca4e3
}
Packit Service bca4e3
Packit Service bca4e3
stop()
Packit Service bca4e3
{
Packit Service bca4e3
	local force=$1
Packit Service bca4e3
Packit Service bca4e3
	echo -n $"Stopping FCoE initiator service: "
Packit Service bca4e3
	pid=$($FCOEADM -p)
Packit Service bca4e3
	if [ "$force" == "force" ]
Packit Service bca4e3
	then
Packit Service bca4e3
		echo -n "Destroying any active fcoe interface/s"
Packit Service bca4e3
		[ "$pid" ] && kill -HUP $pid
Packit Service bca4e3
		rc_status -v
Packit Service bca4e3
	else
Packit Service bca4e3
		[ "$pid" ] && kill -TERM $pid
Packit Service bca4e3
	fi
Packit Service bca4e3
Packit Service bca4e3
Packit Service bca4e3
	rc_status -v
Packit Service bca4e3
}
Packit Service bca4e3
Packit Service bca4e3
status()
Packit Service bca4e3
{
Packit Service bca4e3
	echo -n "Checking status for fcoe service "
Packit Service bca4e3
	pid=$($FCOEADM -p 2> /dev/null)
Packit Service bca4e3
	if [ $? -eq 12 ]; then
Packit Service bca4e3
	    rc_failed 3
Packit Service bca4e3
	    rc_status -v
Packit Service bca4e3
	elif [ -z "$pid" ] ; then
Packit Service bca4e3
	    rc_failed 1
Packit Service bca4e3
	    rc_status -v
Packit Service bca4e3
	else
Packit Service bca4e3
	    rc_reset
Packit Service bca4e3
	    rc_status -v
Packit Service bca4e3
	    interfaces=`$FCOEADM -i 2>&1 | \
Packit Service bca4e3
		awk '/Symbolic Name:/{print $6}' | \
Packit Service bca4e3
		sort | awk '{printf("%s ", $1)}'`
Packit Service bca4e3
	    if [ -z "$interfaces" ]; then
Packit Service bca4e3
		echo "No interfaces created."
Packit Service bca4e3
	    else
Packit Service bca4e3
		echo "Created interfaces: $interfaces"
Packit Service bca4e3
	    fi
Packit Service bca4e3
	fi
Packit Service bca4e3
}
Packit Service bca4e3
Packit Service bca4e3
case "$1" in
Packit Service bca4e3
	start)
Packit Service bca4e3
		start
Packit Service bca4e3
		;;
Packit Service bca4e3
Packit Service bca4e3
	stop)
Packit Service bca4e3
		stop $2
Packit Service bca4e3
		;;
Packit Service bca4e3
Packit Service bca4e3
	restart)
Packit Service bca4e3
		stop $2
Packit Service bca4e3
		start
Packit Service bca4e3
		rc_status
Packit Service bca4e3
		;;
Packit Service bca4e3
Packit Service bca4e3
	force-reload)
Packit Service bca4e3
		echo "force-reload not yet implemented"
Packit Service bca4e3
		;;
Packit Service bca4e3
Packit Service bca4e3
	reload)
Packit Service bca4e3
		echo "reload not yet implemented"
Packit Service bca4e3
		rc_failed 3
Packit Service bca4e3
		;;
Packit Service bca4e3
Packit Service bca4e3
	status)
Packit Service bca4e3
		status
Packit Service bca4e3
		;;
Packit Service bca4e3
Packit Service bca4e3
	*)
Packit Service bca4e3
		echo "Usage: $0 {start|stop [force]|status|restart [force]}"
Packit Service bca4e3
		exit 1
Packit Service bca4e3
		;;
Packit Service bca4e3
esac
Packit Service bca4e3
rc_exit