diff options
Diffstat (limited to 'package/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch')
-rw-r--r-- | package/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/package/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch b/package/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch deleted file mode 100644 index d108a7d3bc..0000000000 --- a/package/dnsmasq/patches/100-fix-dhcp-no-address-warning.patch +++ /dev/null @@ -1,49 +0,0 @@ ---- a/src/dhcp.c -+++ b/src/dhcp.c -@@ -134,7 +134,7 @@ void dhcp_packet(time_t now, int pxe_fd) - struct iovec iov; - ssize_t sz; - int iface_index = 0, unicast_dest = 0, is_inform = 0; -- struct in_addr iface_addr; -+ struct in_addr iface_addr, *addrp = NULL; - struct iface_param parm; - #ifdef HAVE_LINUX_NETWORK - struct arpreq arp_req; -@@ -246,11 +246,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) -@@ -272,7 +270,7 @@ void dhcp_packet(time_t now, int pxe_fd) - parm.current = NULL; - parm.ind = iface_index; - -- if (!iface_check(AF_INET, (struct all_addr *)&iface_addr, ifr.ifr_name)) -+ if (!iface_check(AF_INET, (struct all_addr *)addrp, ifr.ifr_name)) - { - /* If we failed to match the primary address of the interface, see if we've got a --listen-address - for a secondary */ -@@ -291,7 +289,13 @@ void dhcp_packet(time_t now, int pxe_fd) - there is more than one address on the interface in the same subnet */ - complete_context(match.addr, iface_index, 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; - |