aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/services/dnsmasq/patches/0029-Fix-removal-of-DHCP_CLIENT_MAC-options-from-DHCPv6-r.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/network/services/dnsmasq/patches/0029-Fix-removal-of-DHCP_CLIENT_MAC-options-from-DHCPv6-r.patch')
-rw-r--r--package/network/services/dnsmasq/patches/0029-Fix-removal-of-DHCP_CLIENT_MAC-options-from-DHCPv6-r.patch52
1 files changed, 0 insertions, 52 deletions
diff --git a/package/network/services/dnsmasq/patches/0029-Fix-removal-of-DHCP_CLIENT_MAC-options-from-DHCPv6-r.patch b/package/network/services/dnsmasq/patches/0029-Fix-removal-of-DHCP_CLIENT_MAC-options-from-DHCPv6-r.patch
deleted file mode 100644
index e02bd11d23..0000000000
--- a/package/network/services/dnsmasq/patches/0029-Fix-removal-of-DHCP_CLIENT_MAC-options-from-DHCPv6-r.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From f8c77edbdffb8ada7753ea9fa104f0f6da70cfe3 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Thu, 10 Jan 2019 21:58:18 +0000
-Subject: [PATCH 29/32] Fix removal of DHCP_CLIENT_MAC options from DHCPv6
- relay replies.
-
-Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
----
- src/rfc3315.c | 30 +++++++++++++++++-------------
- 1 file changed, 17 insertions(+), 13 deletions(-)
-
---- a/src/rfc3315.c
-+++ b/src/rfc3315.c
-@@ -219,21 +219,25 @@ static int dhcp6_maybe_relay(struct stat
- if (opt6_ptr(opt, 0) + opt6_len(opt) > end)
- return 0;
-
-- int o = new_opt6(opt6_type(opt));
-- if (opt6_type(opt) == OPTION6_RELAY_MSG)
-+ /* Don't copy MAC address into reply. */
-+ if (opt6_type(opt) != OPTION6_CLIENT_MAC)
- {
-- struct in6_addr align;
-- /* the packet data is unaligned, copy to aligned storage */
-- memcpy(&align, inbuff + 2, IN6ADDRSZ);
-- state->link_address = &align;
-- /* zero is_unicast since that is now known to refer to the
-- relayed packet, not the original sent by the client */
-- if (!dhcp6_maybe_relay(state, opt6_ptr(opt, 0), opt6_len(opt), client_addr, 0, now))
-- return 0;
-+ int o = new_opt6(opt6_type(opt));
-+ if (opt6_type(opt) == OPTION6_RELAY_MSG)
-+ {
-+ struct in6_addr align;
-+ /* the packet data is unaligned, copy to aligned storage */
-+ memcpy(&align, inbuff + 2, IN6ADDRSZ);
-+ state->link_address = &align;
-+ /* zero is_unicast since that is now known to refer to the
-+ relayed packet, not the original sent by the client */
-+ if (!dhcp6_maybe_relay(state, opt6_ptr(opt, 0), opt6_len(opt), client_addr, 0, now))
-+ return 0;
-+ }
-+ else
-+ put_opt6(opt6_ptr(opt, 0), opt6_len(opt));
-+ end_opt6(o);
- }
-- else if (opt6_type(opt) != OPTION6_CLIENT_MAC)
-- put_opt6(opt6_ptr(opt, 0), opt6_len(opt));
-- end_opt6(o);
- }
-
- return 1;