update: check_dhcp + reload_dhcp/zones: handle dhcpd/rndc not installed
authorTero Marttila <terom@paivola.fi>
Thu, 22 Mar 2012 16:36:12 +0200
changeset 591 5a0335960591
parent 590 e54d4407ed5b
child 592 88a7683efc54
update: check_dhcp + reload_dhcp/zones: handle dhcpd/rndc not installed
lib/update.operations
--- a/lib/update.operations	Thu Mar 22 16:30:54 2012 +0200
+++ b/lib/update.operations	Thu Mar 22 16:36:12 2012 +0200
@@ -294,6 +294,11 @@
 function check_dhcp {
     local conf=${1:-$DHCPD_CONF}
 
+    if [ ! -e $DHCPD ]; then
+        log_warn "check_dhcp: dhcpd not installed, skipping: $conf"
+        return 0
+    fi
+
     check_generic $conf \
         $DHCPD -cf $conf -t
 }
@@ -353,6 +358,12 @@
     elif [ $RELOAD_NOOP ]; then
         log_noop    "$msg: skipped"
     
+    elif [ ! -e $RNDC ]; then
+        log_warn "reload_zones: rndc not installed, skipping"
+
+    elif [ ! -e $RNDC_KEY ]; then
+        log_warn   "  $msg: rndc: key not found: $RNDC_KEY"
+
     elif [ ! -r $RNDC_KEY ]; then
         log_error   "  $msg: rndc: permission denied: $RNDC_KEY"
 
@@ -394,7 +405,10 @@
 
     elif [ $RELOAD_NOOP ]; then
         log_noop    "$msg: skipped"
-    
+ 
+    elif [ ! -e $DHCPD ]; then
+        log_warn "reload_dhcp: dhcpd not installed, skipping: $conf"
+   
     else
         log_update  "$msg..."