[389-commits] Branch '389-ds-base-1.2.11' - ldap/admin

Noriko Hosoi nhosoi at fedoraproject.org
Fri May 8 00:50:57 UTC 2015


 ldap/admin/src/scripts/restart-dirsrv.in |   15 +++++++++++----
 ldap/admin/src/scripts/start-dirsrv.in   |    1 +
 ldap/admin/src/scripts/stop-dirsrv.in    |    1 +
 3 files changed, 13 insertions(+), 4 deletions(-)

New commits:
commit 070037a3f9ac880c5c38e38419ad23bf4209eb47
Author: Noriko Hosoi <nhosoi at redhat.com>
Date:   Thu May 7 15:42:18 2015 -0700

    Ticket #48148 - start/stop/restart-dirsrv utilities should ignore admin-serv directory
    
    Description:
    1) The script restart-dirsrv also needed to skip /etc/sysconfig/dirsrv-admin.
       This patch silently skips "dirsrv-admin" for restarting dirsrv, as well.
    
    2) If the non-root user runs start/stop/restart-dirsrv, it checks ~/.dirsrv
       to look for the dirsrv-* file.  If the directory is empty, it accidentally
       picks up a file name from the current directory, which is not right.
    
       This patch checks the /etc/sysconfig or ~/.dirsrv directory whether the
       dirsrv-* file exists or not.  If it does not, the scripts just exit with
       SUCCESS (== 0).
    
    https://fedorahosted.org/389/ticket/48148
    
    Reviewed and commentted by rmeggins at redhat.com (Thank you, Rich!!)

diff --git a/ldap/admin/src/scripts/restart-dirsrv.in b/ldap/admin/src/scripts/restart-dirsrv.in
index 76fb176..79fc1b1 100644
--- a/ldap/admin/src/scripts/restart-dirsrv.in
+++ b/ldap/admin/src/scripts/restart-dirsrv.in
@@ -10,6 +10,10 @@
 restart_instance() {
     SERV_ID=$1
 
+    if [ $SERV_ID == "admin" ]; then
+        #ignore admin
+        return 0
+    fi
     server_already_stopped=0
     @sbindir@/stop-dirsrv -d $initconfig_dir $SERV_ID
     status=$?
@@ -48,12 +52,15 @@ if [ "$#" -eq 0 ]; then
     # We're restarting all instances.
     ret=0
     for i in $initconfig_dir/@package_name at -*; do
+        if [ ! -f "$i" ] ; then break ; fi
         regex=s,$initconfig_dir/@package_name at -,,g
         inst=`echo $i | sed -e $regex`
-        echo Restarting instance \"$inst\"
-        restart_instance $inst
-        if [ "$?" -ne 0 ]; then
-            ret=$?
+        if [ $inst != "admin" ]; then
+            echo Restarting instance \"$inst\"
+            restart_instance $inst
+            if [ "$?" -ne 0 ]; then
+                ret=$?
+            fi
         fi
     done
     exit $ret
diff --git a/ldap/admin/src/scripts/start-dirsrv.in b/ldap/admin/src/scripts/start-dirsrv.in
index 0a38c4c..4e36939 100755
--- a/ldap/admin/src/scripts/start-dirsrv.in
+++ b/ldap/admin/src/scripts/start-dirsrv.in
@@ -129,6 +129,7 @@ if [ "$#" -eq 0 ]; then
     # We're starting all instances.
     ret=0
     for i in $initconfig_dir/@package_name at -*; do
+        if [ ! -f "$i" ] ; then break ; fi
         regex=s,$initconfig_dir/@package_name at -,,g
         inst=`echo $i | sed -e $regex`
         start_instance $inst
diff --git a/ldap/admin/src/scripts/stop-dirsrv.in b/ldap/admin/src/scripts/stop-dirsrv.in
index 076af87..15a84a4 100755
--- a/ldap/admin/src/scripts/stop-dirsrv.in
+++ b/ldap/admin/src/scripts/stop-dirsrv.in
@@ -77,6 +77,7 @@ if [ "$#" -eq 0 ]; then
     # We're stopping all instances.
     ret=0
     for i in $initconfig_dir/@package_name at -*; do
+        if [ ! -f "$i" ] ; then break ; fi
         regex=s,$initconfig_dir/@package_name at -,,g
         inst=`echo $i | sed -e $regex`
         stop_instance $inst




More information about the 389-commits mailing list