.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 };