tog-pegasus/pegasus-2.5.1-initscript.patch
2006-04-07 02:56:48 +00:00

164 lines
5.1 KiB
Diff

--- pegasus/rpm/tog-pegasus.rc.initscript 2006-01-30 11:16:24.000000000 -0500
+++ pegasus/rpm/tog-pegasus.rc 2006-04-06 14:38:57.000000000 -0400
@@ -1,80 +1,85 @@
-#//%2006////////////////////////////////////////////////////////////////////////
-#//
-#// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
-#// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
-#// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
-#// IBM Corp.; EMC Corporation, The Open Group.
-#// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
-#// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
-#// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
-#// EMC Corporation; VERITAS Software Corporation; The Open Group.
-#// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
-#// EMC Corporation; Symantec Corporation; The Open Group.
-#//
-#// Permission is hereby granted, free of charge, to any person obtaining a copy
-#// of this software and associated documentation files (the "Software"), to
-#// deal in the Software without restriction, including without limitation the
-#// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-#// sell copies of the Software, and to permit persons to whom the Software is
-#// furnished to do so, subject to the following conditions:
-#//
-#// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
-#// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
-#// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-#// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-#// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-#// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-#// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-#// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#//
-#//==============================================================================
-#! /bin/sh
-#//
-#//%/////////////////////////////////////////////////////////////////////////////
-
-### BEGIN INIT INFO
-# Provides: tog-pegasus
-# Required-Start: $syslog $network
-# Should-Start: $time
-# Required-Stop: $syslog
-# Default-Start: 3 5
-# Default-Stop: 0 1 2 6
-# Description: init script for Pegasus CIM server
-### END INIT INFO
-
-CIMSERVER_BIN=/opt/tog-pegasus/sbin/cimserver
+#!/bin/bash
+#
+# chkconfig: - 98 1
+# description: The Open Group Pegasus cimserver initscript
+# processname: cimserver
+# pidfile: /var/run/tog-pegasus/cimserver.pid
+#
+CIMSERVER_BIN=/usr/sbin/cimserver
prog=cimserver
+LOCKFILE=/var/lock/subsys/tog-pegasus
+. /etc/rc.d/init.d/functions
-test -x $CIMSERVER_BIN || exit 5
+if [ ! -x $CIMSERVER_BIN ]; then
+ echo -n "tog-pegasus $1: $CIMSERVER_BIN not found or not executable.";
+ failure;
+ exit 1;
+fi;
+
+[ -e /etc/sysconfig/tog-pegasus ] && . /etc/sysconfig/tog-pegasus;
+
+PEGASUS_SSL_CONF_FILE=${PEGASUS_SSL_CONF_FILE:=/etc/Pegasus/ssl.cnf}
+PEGASUS_SSL_CERT_FILE=${PEGASUS_SSL_CERT_FILE:=/etc/Pegasus/server.pem}
+PEGASUS_SSL_KEY_FILE=${PEGASUS_SSL_KEY_FILE:=/etc/Pegasus/file.pem}
+PEGASUS_SSL_TRUSTSTORE=${PEGASUS_SSL_TRUSTSTORE:=/etc/Pegasus/client.pem}
-. /lib/lsb/init-functions
RETVAL=0
case "$1" in
- start)
+ start)
+ if [ ! -e ${PEGASUS_SSL_CONF_FILE} ] || [ ! -e ${PEGASUS_SSL_CERT_FILE} ] ||
+ [ ! -e ${PEGASUS_SSL_KEY_FILE} ] || [ ! -e ${PEGASUS_SSL_TRUSTSTORE} ]; then
+ if [ -x /usr/share/Pegasus/scripts/genOpenPegasusSSLCerts ]; then
+ echo -n "tog-pegasus: Generating cimserver SSL certificates...";
+ /usr/share/Pegasus/scripts/genOpenPegasusSSLCerts;
+ if [ $? -eq 0 ]; then
+ success;
+ else
+ failure;
+ fi;
+ echo;
+ fi;
+ fi;
echo -n $"Starting up CIM server: "
$CIMSERVER_BIN
RETVAL=$?
- [ "$RETVAL" -eq 0 ] && log_success_msg $"$prog start" || log_failure_msg $"$prog start"
- echo
+ if [ "$RETVAL" -eq 0 ]; then
+ touch $LOCKFILE;
+ success;
+ else
+ failure;
+ fi;
+ echo;
;;
stop)
echo -n $"Shutting down CIM server: "
killproc cimserver
RETVAL=$?
- [ "$RETVAL" -eq 0 ] && log_success_msg $"$prog stop" || log_failure_msg $"$prog stop"
+ if [ "$RETVAL" -eq 0 ]; then
+ rm -f $LOCKFILE;
+ rm -f /var/run/tog-pegasus/socket/*;
+ rm -f /var/run/tog-pegasus/cimserver.pid;
+ success;
+ else
+ failure;
+ fi
echo
;;
+
status)
pid=`pidofproc $CIMSERVER_BIN`
RETVAL=$?
if [ "$RETVAL" -eq 0 ]; then
- echo "CIM server is running"
+ echo -n $"CIM server ($pid) is running";
+ success;
else
- echo "CIM server is not running"
+ echo -n $"CIM server is not running";
+ failure;
fi
+ echo
;;
+
condrestart)
pid=`pidofproc $CIMSERVER_BIN`
RETVAL=$?
@@ -83,13 +88,18 @@
RETVAL=$?;
fi;
;;
+
try-restart)
- $0 stop && $0 start
+ $0 stop && $0 start;
+ RETVAL=$?;
;;
+
restart|force-reload)
- $0 stop
- $0 start
+ $0 stop;
+ $0 start;
+ RETVAL=$?;
;;
+
reload)
;;
*)