diff options
author | Gustavo Zacarias <gustavo@zacarias.com.ar> | 2013-11-14 09:12:00 -0300 |
---|---|---|
committer | Peter Korsgaard <peter@korsgaard.com> | 2013-11-18 11:39:09 +0100 |
commit | dcefce4cf81f8a4ca8a5baadc51554e5fb3346a8 (patch) | |
tree | af6ed6ee85ac6912dc0bffb4920796e574aa4fda | |
parent | 25507b2a5afaa60daf58e1a76ff9be2a6da0f7f9 (diff) | |
download | buildroot-dcefce4cf81f8a4ca8a5baadc51554e5fb3346a8.tar.gz buildroot-dcefce4cf81f8a4ca8a5baadc51554e5fb3346a8.zip |
dhcp: adjust initscripts and misc details
Revamp initscripts see bug #3601
* Trim whitespace
* Check for installed binary (dhcp-relay)
* Check for installed config (dhcp-server)
* Check for proper variable setup from the script (both)
* Add "FAIL" message when startup fails (blind OK isn't accurate)
* Add start/stop messages to dhcp-relay
Switch bool to "dhcp (ISC)" to keep in line with package sorting.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
-rw-r--r-- | package/dhcp/Config.in | 2 | ||||
-rwxr-xr-x | package/dhcp/S80dhcp-relay | 27 | ||||
-rwxr-xr-x | package/dhcp/S80dhcp-server | 21 |
3 files changed, 20 insertions, 30 deletions
diff --git a/package/dhcp/Config.in b/package/dhcp/Config.in index e341485b16..7944edefc9 100644 --- a/package/dhcp/Config.in +++ b/package/dhcp/Config.in @@ -1,5 +1,5 @@ config BR2_PACKAGE_DHCP - bool "isc dhcp" + bool "dhcp (ISC)" # fork() depends on BR2_USE_MMU help diff --git a/package/dhcp/S80dhcp-relay b/package/dhcp/S80dhcp-relay index c870ea7f5d..2a632ef950 100755 --- a/package/dhcp/S80dhcp-relay +++ b/package/dhcp/S80dhcp-relay @@ -3,7 +3,6 @@ # $Id: dhcp3-relay,v 1.1 2004/04/16 15:41:08 ml Exp $ # - # What servers should the DHCP relay forward requests to? # e.g: SERVERS="192.168.0.1" SERVERS="" @@ -14,31 +13,29 @@ INTERFACES="" # Additional options that are passed to the DHCP relay daemon? OPTIONS="" - - - -# It is not safe to start if we don't have a default configuration... -echo "/etc/init.d/dhcp-relay not yet configured! - Aborting..." -exit 1; - - +# Sanity checks +test -f /usr/sbin/dhcrelay || exit 0 +test -n "$INTERFACES" || exit 0 +test -n "$SERVERS" || exit 0 # Build command line for interfaces (will be passed to dhrelay below.) IFCMD="" -if test "$INTERFACES" != ""; then - for I in $INTERFACES; do - IFCMD=${IFCMD}"-i "${I}" " - done -fi +for I in $INTERFACES; do + IFCMD=${IFCMD}"-i "${I}" " +done DHCRELAYPID=/var/run/dhcrelay.pid case "$1" in start) + echo -n "Starting DHCP relay: " start-stop-daemon -S -x /usr/sbin/dhcrelay -- -q $OPTIONS $IFCMD $SERVERS + [ $? == 0 ] && echo "OK" || echo "FAIL" ;; stop) + echo -n "Stopping DHCP relay: " start-stop-daemon -K -x /usr/sbin/dhcrelay + [ $? == 0 ] && echo "OK" || echo "FAIL" ;; restart | force-reload) $0 stop @@ -47,7 +44,7 @@ case "$1" in ;; *) echo "Usage: /etc/init.d/dhcp-relay {start|stop|restart|force-reload}" - exit 1 + exit 1 esac exit 0 diff --git a/package/dhcp/S80dhcp-server b/package/dhcp/S80dhcp-server index 7c7f893a14..98bd3cc67e 100755 --- a/package/dhcp/S80dhcp-server +++ b/package/dhcp/S80dhcp-server @@ -3,34 +3,27 @@ # $Id: dhcp3-server.init.d,v 1.4 2003/07/13 19:12:41 mdz Exp $ # - - # On what interfaces should the DHCP server (dhcpd) serve DHCP requests? # Separate multiple interfaces with spaces, e.g. "eth0 eth1". INTERFACES="" - -# It is not safe to start if we don't have a default configuration... -echo "/etc/init.d/dhcp-server not yet configured! - Aborting..." -exit 1; - - - +# Sanity checks test -f /usr/sbin/dhcpd || exit 0 - +test -f /etc/dhcpd.conf || exit 0 +test -n "$INTERFACES" || exit 0 case "$1" in start) echo -n "Starting DHCP server: " test -d /var/lib/dhcp/ || mkdir -p /var/lib/dhcp/ - test -f /var/lib/dhcp/dhcpd.leases || touch /var/lib/dhcp/dhcpd.leases + test -f /var/lib/dhcp/dhcpd.leases || touch /var/lib/dhcp/dhcpd.leases start-stop-daemon -S -x /usr/sbin/dhcpd -- -q $INTERFACES - echo "." + [ $? == 0 ] && echo "OK" || echo "FAIL" ;; stop) echo -n "Stopping DHCP server: dhcpd3" start-stop-daemon -K -x /usr/sbin/dhcpd - echo "." + [ $? == 0 ] && echo "OK" || echo "FAIL" ;; restart | force-reload) $0 stop @@ -42,7 +35,7 @@ case "$1" in ;; *) echo "Usage: /etc/init.d/dhcp-server {start|stop|restart|force-reload}" - exit 1 + exit 1 esac exit 0 |