summaryrefslogtreecommitdiff
path: root/package/network/services/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch
diff options
context:
space:
mode:
authorJo-Philipp Wich <jo@mein.io>2017-06-02 00:12:34 +0200
committerJo-Philipp Wich <jo@mein.io>2017-06-02 00:25:08 +0200
commitcdfc6788a9fc7c0a4b90ab92ab302e0a2506cc54 (patch)
treee3d639073593ddd7e9a3100d57c8a56bf011d660 /package/network/services/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch
parent9e20cc56b9a7244b14a5aa8d807148a619339103 (diff)
downloadmtk-20170518-cdfc6788a9fc7c0a4b90ab92ab302e0a2506cc54.zip
mtk-20170518-cdfc6788a9fc7c0a4b90ab92ab302e0a2506cc54.tar.gz
mtk-20170518-cdfc6788a9fc7c0a4b90ab92ab302e0a2506cc54.tar.bz2
dnsmasq: bump to 2.77
This is a cumulative backport of multiple dnsmasq update commits in master. Drops three LEDE specific patches which are included upstream and another patch which became obsolete. Remaining LEDE specific patches are rebased. Fixes FS#766 - Intermittent SIGSEGV crash of dnsmasq-full. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'package/network/services/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch')
-rw-r--r--package/network/services/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch47
1 files changed, 0 insertions, 47 deletions
diff --git a/package/network/services/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch b/package/network/services/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch
deleted file mode 100644
index 5fc62ff..0000000
--- a/package/network/services/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch
+++ /dev/null
@@ -1,47 +0,0 @@
---- a/src/dhcp.c
-+++ b/src/dhcp.c
-@@ -147,7 +147,7 @@ void dhcp_packet(time_t now, int pxe_fd)
- ssize_t sz;
- int iface_index = 0, unicast_dest = 0, is_inform = 0;
- int rcvd_iface_index;
-- struct in_addr iface_addr;
-+ struct in_addr iface_addr, *addrp = NULL;
- struct iface_param parm;
- #ifdef HAVE_LINUX_NETWORK
- struct arpreq arp_req;
-@@ -277,11 +277,9 @@ void dhcp_packet(time_t now, int pxe_fd)
- {
- ifr.ifr_addr.sa_family = AF_INET;
- if (ioctl(daemon->dhcpfd, SIOCGIFADDR, &ifr) != -1 )
-- iface_addr = ((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr;
-- else
- {
-- my_syslog(MS_DHCP | LOG_WARNING, _("DHCP packet received on %s which has no address"), ifr.ifr_name);
-- return;
-+ addrp = &iface_addr;
-+ iface_addr = ((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr;
- }
-
- for (tmp = daemon->dhcp_except; tmp; tmp = tmp->next)
-@@ -300,7 +298,7 @@ void dhcp_packet(time_t now, int pxe_fd)
- parm.relay_local.s_addr = 0;
- parm.ind = iface_index;
-
-- if (!iface_check(AF_INET, (struct all_addr *)&iface_addr, ifr.ifr_name, NULL))
-+ if (!iface_check(AF_INET, (struct all_addr *)addrp, ifr.ifr_name, NULL))
- {
- /* If we failed to match the primary address of the interface, see if we've got a --listen-address
- for a secondary */
-@@ -320,6 +318,12 @@ void dhcp_packet(time_t now, int pxe_fd)
- complete_context(match.addr, iface_index, NULL, match.netmask, match.broadcast, &parm);
- }
-
-+ if (!addrp)
-+ {
-+ my_syslog(MS_DHCP | LOG_WARNING, _("DHCP packet received on %s which has no address"), ifr.ifr_name);
-+ return;
-+ }
-+
- if (!iface_enumerate(AF_INET, &parm, complete_context))
- return;
-