- If the CA certificate does not exist, assume that the certificate is self-signed.
[myplc.git] / host.init
index 8fac379..79920a0 100755 (executable)
--- a/host.init
+++ b/host.init
@@ -6,13 +6,27 @@
 #
 # description: Manages all PLC services on this machine
 #
-# $Id: host.init,v 1.5 2006/04/18 15:39:34 thierry Exp $
+# $Id: host.init,v 1.7 2006/05/23 18:00:21 mlhuang Exp $
 #
 
 PATH=/sbin:/bin:/usr/bin:/usr/sbin
 
 # Source function library.
-. /etc/init.d/functions
+if [ -f /etc/init.d/functions ] ; then
+    . /etc/init.d/functions
+fi
+
+# If success() or failure() are not defined
+if ! type -type success >/dev/null || ! type -type failure >/dev/null ; then
+    success() {
+       echo -ne "[  OK  ]\r"
+       return 0
+    }
+    failure() {
+       echo -ne "[FAILED]\r"
+       return 1
+    }
+fi
 
 # Source configuration
 if [ -f /etc/sysconfig/plc -a -z "${PLC_ROOT}${PLC_DATA}" ] ; then
@@ -64,7 +78,10 @@ mount_plc ()
 
 start ()
 {
-    mount_plc 
+    # Starting everything
+    if [ -z "$1" ] ; then
+       mount_plc 
+    fi
 
     chroot $PLC_ROOT /sbin/service plc $PLC_OPTIONS start $*
     check
@@ -92,19 +109,19 @@ stop ()
        check
     fi
 
-    umount_plc
-
+    # Stopped everything
+    if [ -z "$1" ] ; then
+       umount_plc
+    fi
 }
 
-mount_status ()
+mountstatus_plc ()
 {
-  lines=$(mount | grep $PLC_ROOT)
-  if [ -z "$lines" ] ; then
-    echo "==== $PLC_ROOT is *not* mounted"
-  else
-    echo "==== The following mount points remain active"
-    echo "$lines"
-  fi
+    for dir in $PLC_ROOT/proc $PLC_ROOT/data $PLC_ROOT ; do
+       if mounted $dir ; then
+           echo $dir
+       fi
+    done
 }
 
 # Get command
@@ -124,13 +141,9 @@ case "$command" in
        start $*
        ;;
 
-    mount|umount)
+    mount|umount|mountstatus)
         ${command}_plc $*
        ;;
-
-    mountstatus)
-        mount_status $*
-       ;;
   
     *)
        echo "Usage: $0 {start|stop|restart|mount|umount|mountstatus}"