diff options
Diffstat (limited to 'source/n/dhcpcd/patches/dhcpcd.2fae4a113c3e736d585dd300ca6c8fddae300503.patch')
-rw-r--r-- | source/n/dhcpcd/patches/dhcpcd.2fae4a113c3e736d585dd300ca6c8fddae300503.patch | 119 |
1 files changed, 0 insertions, 119 deletions
diff --git a/source/n/dhcpcd/patches/dhcpcd.2fae4a113c3e736d585dd300ca6c8fddae300503.patch b/source/n/dhcpcd/patches/dhcpcd.2fae4a113c3e736d585dd300ca6c8fddae300503.patch deleted file mode 100644 index 8f6a0075a..000000000 --- a/source/n/dhcpcd/patches/dhcpcd.2fae4a113c3e736d585dd300ca6c8fddae300503.patch +++ /dev/null @@ -1,119 +0,0 @@ -From 2fae4a113c3e736d585dd300ca6c8fddae300503 Mon Sep 17 00:00:00 2001 -From: Roy Marples <roy@marples.name> -Date: Tue, 31 Aug 2021 10:57:44 +0100 -Subject: [PATCH] DHCP6: Only send FQDN for SOLICIT, REQUEST, RENEW, or REBIND messages. - -As per RFC 4704 section 5. -Fixes #44. ---- - src/dhcp6.c | 79 +++++++++++++++++++++++++++++++++------------------------- - 1 files changed, 45 insertions(+), 34 deletions(-) - -diff --git a/src/dhcp6.c b/src/dhcp6.c -index f355418..9c818b3 100644 ---- a/src/dhcp6.c -+++ b/src/dhcp6.c -@@ -637,7 +637,7 @@ dhcp6_makemessage(struct interface *ifp) - uint8_t type; - uint16_t si_len, uni_len, n_options; - uint8_t *o_lenp; -- struct if_options *ifo; -+ struct if_options *ifo = ifp->options; - const struct dhcp_opt *opt, *opt2; - const struct ipv6_addr *ap; - char hbuf[HOSTNAME_MAX_LEN + 1]; -@@ -658,8 +658,50 @@ dhcp6_makemessage(struct interface *ifp) - state->send = NULL; - } - -- ifo = ifp->options; -- fqdn = ifo->fqdn; -+ switch(state->state) { -+ case DH6S_INIT: /* FALLTHROUGH */ -+ case DH6S_DISCOVER: -+ type = DHCP6_SOLICIT; -+ break; -+ case DH6S_REQUEST: -+ type = DHCP6_REQUEST; -+ break; -+ case DH6S_CONFIRM: -+ type = DHCP6_CONFIRM; -+ break; -+ case DH6S_REBIND: -+ type = DHCP6_REBIND; -+ break; -+ case DH6S_RENEW: -+ type = DHCP6_RENEW; -+ break; -+ case DH6S_INFORM: -+ type = DHCP6_INFORMATION_REQ; -+ break; -+ case DH6S_RELEASE: -+ type = DHCP6_RELEASE; -+ break; -+ case DH6S_DECLINE: -+ type = DHCP6_DECLINE; -+ break; -+ default: -+ errno = EINVAL; -+ return -1; -+ } -+ -+ /* RFC 4704 Section 5 says we can only send FQDN for these -+ * message types. */ -+ switch(type) { -+ case DHCP6_SOLICIT: -+ case DHCP6_REQUEST: -+ case DHCP6_RENEW: -+ case DHCP6_REBIND: -+ fqdn = ifo->fqdn; -+ break; -+ default: -+ fqdn = FQDN_DISABLE; -+ break; -+ } - - if (fqdn == FQDN_DISABLE && ifo->options & DHCPCD_HOSTNAME) { - /* We're sending the DHCPv4 hostname option, so send FQDN as -@@ -823,37 +865,6 @@ dhcp6_makemessage(struct interface *ifp) - } - - switch(state->state) { -- case DH6S_INIT: /* FALLTHROUGH */ -- case DH6S_DISCOVER: -- type = DHCP6_SOLICIT; -- break; -- case DH6S_REQUEST: -- type = DHCP6_REQUEST; -- break; -- case DH6S_CONFIRM: -- type = DHCP6_CONFIRM; -- break; -- case DH6S_REBIND: -- type = DHCP6_REBIND; -- break; -- case DH6S_RENEW: -- type = DHCP6_RENEW; -- break; -- case DH6S_INFORM: -- type = DHCP6_INFORMATION_REQ; -- break; -- case DH6S_RELEASE: -- type = DHCP6_RELEASE; -- break; -- case DH6S_DECLINE: -- type = DHCP6_DECLINE; -- break; -- default: -- errno = EINVAL; -- return -1; -- } -- -- switch(state->state) { - case DH6S_REQUEST: /* FALLTHROUGH */ - case DH6S_RENEW: /* FALLTHROUGH */ - case DH6S_RELEASE: --- -1.7.1 - - |