]> git.ipfire.org Git - thirdparty/dhcpcd.git/commitdiff
Merge branch 'master' into rbtree
authorRoy Marples <roy@marples.name>
Wed, 17 Apr 2019 08:15:30 +0000 (08:15 +0000)
committerRoy Marples <roy@marples.name>
Wed, 17 Apr 2019 08:15:30 +0000 (08:15 +0000)
1  2 
src/ipv4.c

diff --cc src/ipv4.c
index 4877b7ec9def79cb6a9d33c7a23600412cc56a72,df106e80532b1e9665f869e4f468368a3ae46053..9f50329a6f190ec46133ae83b5c50191b3a31113
@@@ -432,7 -424,7 +432,7 @@@ inet_routerhostroute(rb_tree_t *routes
  }
  
  bool
- inet_getroutes(struct dhcpcd_ctx *ctx, rb_tree_t *routes)
 -inet_getroutes(struct dhcpcd_ctx *ctx, struct rt_head *routes)
++inet_getroutes(struct dhcpcd_ctx *ctx, rb_tree_t *routes, rb_tree_t *kroutes)
  {
        struct interface *ifp;
  #ifdef IPV4LL
        /* If there is no default route, see if we can use an IPv4LL one. */
        memset(&def, 0, sizeof(def));
        def.rt_dest.sa_family = AF_INET;
 -      have_default = (rt_find(routes, &def) != NULL);
++      def.rt_netmask.sa_family = AF_INET;
 +      have_default = (rb_tree_find_node(routes, &def) != NULL);
+       if (!have_default)
 -              have_default = (rt_find(&ctx->kroutes, &def) != NULL);
++              have_default = (rb_tree_find_node(kroutes, &def) != NULL);
++
        if (!have_default) {
                TAILQ_FOREACH(ifp, ctx->ifaces, next) {
                        if (ifp->active &&
                                break;
                }
        }
++#else
++      UNUSED(kroutes);
  #endif
  
        return true;