]> git.ipfire.org Git - thirdparty/dhcpcd.git/commitdiff
Fix kernel route detection after adding our delegated addresses.
authorRoy Marples <roy@marples.name>
Wed, 18 Mar 2015 14:38:17 +0000 (14:38 +0000)
committerRoy Marples <roy@marples.name>
Wed, 18 Mar 2015 14:38:17 +0000 (14:38 +0000)
defs.h
dhcp6.c

diff --git a/defs.h b/defs.h
index 69546505d205665aaf93f82b4cbff8143f7e6dbe..bfc3c2f19e37511cc6d2ee87440dd816a9c83190 100644 (file)
--- a/defs.h
+++ b/defs.h
@@ -28,7 +28,7 @@
 #define CONFIG_H
 
 #define PACKAGE                        "dhcpcd"
-#define VERSION                        "6.7.99.6"
+#define VERSION                        "6.7.99.7"
 
 #ifndef CONFIG
 # define CONFIG                        SYSCONFDIR "/" PACKAGE ".conf"
diff --git a/dhcp6.c b/dhcp6.c
index b3e3e4b8efa88031d0ef4a3ae34cc1da8f3ed8e9..c95bee1d591f5ecc8e69527257abc263b03e80f8 100644 (file)
--- a/dhcp6.c
+++ b/dhcp6.c
@@ -2482,6 +2482,7 @@ dhcp6_delegate_prefix(struct interface *ifp)
                if (k && !carrier_warned) {
                        ifd_state = D6_STATE(ifd);
                        ipv6_addaddrs(&ifd_state->addrs);
+                       if_initrt6(ifd);
                        dhcp6_script_try_run(ifd, 1);
                }
        }
@@ -2547,6 +2548,7 @@ dhcp6_find_delegates(struct interface *ifp)
                state = D6_STATE(ifp);
                state->state = DH6S_DELEGATED;
                ipv6_addaddrs(&state->addrs);
+               if_initrt6(ifp);
                ipv6_buildroutes(ifp->ctx);
                dhcp6_script_try_run(ifp, 1);
        }
@@ -3037,6 +3039,7 @@ recv:
                else if (state->expire == 0)
                        logger(ifp->ctx, has_new ? LOG_INFO : LOG_DEBUG,
                            "%s: will expire", ifp->name);
+               if_initrt6(ifp);
                ipv6_buildroutes(ifp->ctx);
                dhcp6_writelease(ifp);
                dhcp6_script_try_run(ifp, 0);