]> git.ipfire.org Git - thirdparty/dhcpcd.git/commitdiff
DHCP6: Implement USE_MULTICAST
authorJon Franklin <jon_franklin@dell.com>
Wed, 12 Feb 2025 12:46:50 +0000 (12:46 +0000)
committerRoy Marples <roy@marples.name>
Wed, 12 Feb 2025 12:46:50 +0000 (12:46 +0000)
src/dhcp6.c

index fad22f73dae91664a1fa6d2f9eca300ece284c06..fb4d93619104c78d265eba2259caa86c0335a1fb 100644 (file)
@@ -2202,6 +2202,12 @@ dhcp6_checkstatusok(const struct interface *ifp,
        state->lerror = code;
        errno = 0;
 
+       /* RFC 8415 18.2.10 */
+       if (code == D6_STATUS_USEMULTICAST) {
+               logdebugx("%s: server sent USEMULTICAST", ifp->name);
+               state->unicast = in6addr_any;
+       }
+
        /* code cannot be D6_STATUS_OK, so there is a failure */
        if (ifp->ctx->options & DHCPCD_TEST)
                eloop_exit(ifp->ctx->eloop, EXIT_FAILURE);