From: Jo-Philipp Wich Date: Sun, 21 Nov 2010 13:53:27 +0000 (+0000) Subject: Package dnsmasq init-file If an already running DHCP-server is found on the configure... X-Git-Tag: reboot~18338 X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fstaging%2Fchunkeey.git;a=commitdiff_plain;h=bd35e85116b288c05ef5f76935b27eb95d99d47d Package dnsmasq init-file If an already running DHCP-server is found on the configured interface, the init-script refuses to start, but does not give a hint why. It took us some days to track down this behavior in our MANET, where every wifi/adhoc-node runs it own DHCP-server. Now syslog is more verbose on this. Signed-off-by: Bastian Bittorf SVN-Revision: 24051 --- diff --git a/package/dnsmasq/Makefile b/package/dnsmasq/Makefile index 695d26088b..14d3cc4dd6 100644 --- a/package/dnsmasq/Makefile +++ b/package/dnsmasq/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dnsmasq PKG_VERSION:=2.55 -PKG_RELEASE:=5 +PKG_RELEASE:=6 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq diff --git a/package/dnsmasq/files/dnsmasq.init b/package/dnsmasq/files/dnsmasq.init index 00882e5f51..4acba5b846 100644 --- a/package/dnsmasq/files/dnsmasq.init +++ b/package/dnsmasq/files/dnsmasq.init @@ -271,7 +271,7 @@ dhcp_add() { DNS_SERVERS="$DNS_SERVERS $dnsserver" } - append_bool "$cfg" ignore "-2 '$ifname'" && return 0 + append_bool "$cfg" ignore "-2 $ifname" && return 0 config_get proto "$net" proto [ static = "$proto" ] || return 0 @@ -283,7 +283,12 @@ dhcp_add() { #check for an already active dhcp server on the interface, unless 'force' is set config_get_bool force "$cfg" force 0 [ $force -gt 0 ] || { - udhcpc -n -q -s /bin/true -t 1 -i $ifname >&- && return 0 + udhcpc -n -q -s /bin/true -t 1 -i $ifname >&- && { + logger -t dnsmasq \ + "found already running DHCP-server on interface '$ifname'" \ + "refusing to start, use 'option force 1' to override" + return 0 + } } config_get start "$cfg" start