diff options
Diffstat (limited to 'package/network/services/dnsmasq/patches/011-Remove-ping-check-of-configured-DHCP-address.patch')
-rw-r--r-- | package/network/services/dnsmasq/patches/011-Remove-ping-check-of-configured-DHCP-address.patch | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/package/network/services/dnsmasq/patches/011-Remove-ping-check-of-configured-DHCP-address.patch b/package/network/services/dnsmasq/patches/011-Remove-ping-check-of-configured-DHCP-address.patch new file mode 100644 index 0000000000..67f90e172d --- /dev/null +++ b/package/network/services/dnsmasq/patches/011-Remove-ping-check-of-configured-DHCP-address.patch @@ -0,0 +1,28 @@ +From 1d224949cced9e82440d00b3dbaf32c262bac2ff Mon Sep 17 00:00:00 2001 +From: Simon Kelley <simon@thekelleys.org.uk> +Date: Sat, 8 Jul 2017 20:52:55 +0100 +Subject: [PATCH 1/2] Remove ping-check of configured DHCP address. + +This was added in 5ce3e76fbf89e942e8c54ef3e3389facf0d9067a but +it trips over too many buggy clients that leave an interface configured +even in DHCPDISCOVER case. +--- + src/rfc2131.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/src/rfc2131.c b/src/rfc2131.c +index 86230b4..785e15c 100644 +--- a/src/rfc2131.c ++++ b/src/rfc2131.c +@@ -1040,8 +1040,6 @@ size_t dhcp_reply(struct dhcp_context *context, char *iface_name, int int_index, + else if (have_config(config, CONFIG_DECLINED) && + difftime(now, config->decline_time) < (float)DECLINE_BACKOFF) + my_syslog(MS_DHCP | LOG_WARNING, _("not using configured address %s because it was previously declined"), addrs); +- else if ((!lease || lease->addr.s_addr != config->addr.s_addr) && !do_icmp_ping(now, config->addr, 0, loopback)) +- my_syslog(MS_DHCP | LOG_WARNING, _("not using configured address %s because it is in use by another host"), addrs); + else + conf = config->addr; + } +-- +2.13.2 + |