--- 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)
 	;;
      *)