[csw-devel] SF.net SVN: gar:[7576] csw/mgar/pkg/dhcp/trunk

bonivart at users.sourceforge.net bonivart at users.sourceforge.net
Mon Dec 7 14:44:57 CET 2009


Revision: 7576
          http://gar.svn.sourceforge.net/gar/?rev=7576&view=rev
Author:   bonivart
Date:     2009-12-07 13:44:57 +0000 (Mon, 07 Dec 2009)

Log Message:
-----------
dhcp: update to beta 3, modified init script, gar updates

Modified Paths:
--------------
    csw/mgar/pkg/dhcp/trunk/Makefile
    csw/mgar/pkg/dhcp/trunk/files/CSWdhcp.cswdhcpd

Modified: csw/mgar/pkg/dhcp/trunk/Makefile
===================================================================
--- csw/mgar/pkg/dhcp/trunk/Makefile	2009-12-07 13:34:56 UTC (rev 7575)
+++ csw/mgar/pkg/dhcp/trunk/Makefile	2009-12-07 13:44:57 UTC (rev 7576)
@@ -42,18 +42,10 @@
 
 INSTALL_SCRIPTS = custom
 
-#PROTOTYPE_FILTER  = awk ' \
-#  $$$$3 ~ /\/init.d\/cswdhcpd$$$$/ { $$$$2 = "cswinitsmf" } \
-#  $$$$3 ~ /\/dhcpd.conf.CSW$$$$/ { $$$$2 = "cswcpsampleconf" } \
-#  $$$$3 ~ /\/dhclient.conf.CSW$$$$/ { $$$$2 = "cswcpsampleconf" } \
-#  $$$$3 ~ /\/dhcpd.leases.CSW$$$$/ { $$$$2 = "cswcpsampleconf" } \
-#  { print }'
-
 INITSMF = /etc/opt/csw/init.d/cswdhcpd
 SAMPLECONF = /etc/opt/csw/dhcpd.conf /etc/opt/csw/dhclient.conf /var/opt/csw/dhcp/db/dhcpd.leases
 
 SPKG_SOURCEURL = https://www.isc.org/software/dhcp
-#SPKG_CLASSES_CSWdhcp = none cswcpsampleconf cswinitsmf
 
 include gar/category.mk
 
@@ -64,12 +56,8 @@
 	@ginstall -d $(DESTDIR)/etc/opt/csw/init.d
 	@cp $(FILEDIR)/CSWdhcp.cswdhcpd $(DESTDIR)/etc/opt/csw/init.d/cswdhcpd
 	@chmod 755 $(DESTDIR)/etc/opt/csw/init.d/cswdhcpd
-#	@( cd $(DESTDIR)/etc/opt/csw ; \
-#	   mv dhcpd.conf dhcpd.conf.CSW ; \
-#	   mv dhclient.conf dhclient.conf.CSW )
 	@ginstall -d $(DESTDIR)$(docdir)/$(GARNAME)
 	@cp $(FILEDIR)/CSWdhcp.README.CSW $(DESTDIR)$(docdir)/$(GARNAME)/README.CSW
 	@ginstall -d $(DESTDIR)/var/opt/csw/$(GARNAME)/db
-#	@touch $(DESTDIR)/var/opt/csw/$(GARNAME)/db/dhcpd.leases.CSW
 	@touch $(DESTDIR)/var/opt/csw/$(GARNAME)/db/dhcpd.leases
 	@$(MAKECOOKIE)

Modified: csw/mgar/pkg/dhcp/trunk/files/CSWdhcp.cswdhcpd
===================================================================
--- csw/mgar/pkg/dhcp/trunk/files/CSWdhcp.cswdhcpd	2009-12-07 13:34:56 UTC (rev 7575)
+++ csw/mgar/pkg/dhcp/trunk/files/CSWdhcp.cswdhcpd	2009-12-07 13:44:57 UTC (rev 7576)
@@ -1,8 +1,9 @@
 #!/sbin/sh
 
 # rc-script for CSW DHCP
-# Peter Bonivart, 2009-01-27
+# Peter Bonivart, 2009-12-04
 
+SERVICE=dhcp
 PID=/var/opt/csw/dhcp/dhcpd.pid
 #CONF=/opt/csw/etc/dhcpd.conf  # use old location of conf file
 CONF=/etc/opt/csw/dhcpd.conf
@@ -11,14 +12,14 @@
 ZONE= # used for initialization, do not change
 
 case "$1" in
-  'start')
+  start)
     if [ -f /opt/csw/sbin/dhcpd -a -f $CONF ]; then
-      echo 'Starting dhcp.'
+      echo "Starting $SERVICE."
       /opt/csw/sbin/dhcpd -cf $CONF $OPTIONS
     fi
     ;;
-  'stop')
-    echo 'Shutting down dhcp.'
+  stop)
+    echo "Stopping $SERVICE."
     if [ -x /usr/bin/zonename ]; then
       if [ "`/usr/bin/zonename`" = "global" ]; then
         ZONE="-z global"
@@ -28,8 +29,25 @@
     [ -f $PID ] && /usr/bin/rm $PID
     exit 0
     ;;
+  restart)
+    FAIL=
+    /opt/csw/sbin/dhcpd -cf $CONF -t || FAIL=1
+    /opt/csw/sbin/dhcpd -cf $CONF -T || FAIL=2
+    [ $FAIL = 1 ] && echo "Your configuration seems broken. Exiting."
+    [ $FAIL = 2 ] && echo "Your lease file seems broken. Exiting."
+    [ $FAIL ] && exit 1
+    $0 stop
+    echo "Waiting for $SERVICE to stop.\c"
+    while ( /usr/bin/pgrep -x dhcpd > /dev/null ); do
+      echo ".\c"
+      sleep 1
+    done
+    echo
+    sleep 1
+    $0 start
+    ;;
   *)
-    echo "Usage: $0 { start | stop }"
+    echo "Usage: $0 { start | stop | restart }"
     exit 1
     ;;
 esac


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.



More information about the devel mailing list