From: Igor Putovny Date: Thu, 7 Mar 2024 14:32:58 +0000 (+0100) Subject: Create default net based on adress type X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5cb2e20f4d49eb2fb3c7ce7d30a1023a72de124f;p=thirdparty%2Fbird.git Create default net based on adress type --- diff --git a/proto/aggregator/aggregator.c b/proto/aggregator/aggregator.c index d05eb1de1..57f1b722d 100644 --- a/proto/aggregator/aggregator.c +++ b/proto/aggregator/aggregator.c @@ -1539,9 +1539,20 @@ aggregator_start(struct proto *P) .data = p, }; - struct network *default_net = mb_alloc(P->pool, sizeof(struct network) + sizeof(struct net_addr_ip4)); - net_fill_ip4(default_net->n.addr, IP4_NONE, 0); - log("Creating net %p for default route", default_net); + struct network *default_net = NULL; + + if (p->addr_type == NET_IP4) + { + default_net = mb_alloc(P->pool, sizeof(struct network) + sizeof(struct net_addr_ip4)); + net_fill_ip4(default_net->n.addr, IP4_NONE, 0); + log("Creating net %p for default route", default_net); + } + else if (p->addr_type == NET_IP6) + { + default_net = mb_alloc(P->pool, sizeof(struct network) + sizeof(struct net_addr_ip6)); + net_fill_ip6(default_net->n.addr, IP6_NONE, 0); + log("Creating net %p for default route", default_net); + } /* Create route attributes with zero nexthop */ struct rta rta = { 0 };