From: Donald Sharp Date: Wed, 23 Aug 2017 19:35:27 +0000 (-0400) Subject: eigrpd: Refactor eigrp_network_[un]set to use prefix X-Git-Tag: frr-4.0-dev~375^2~4 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=cd6c066eb3a62f7d68458a18df70a893b6f0db1d;p=matthieu%2Ffrr.git eigrpd: Refactor eigrp_network_[un]set to use prefix Signed-off-by: Donald Sharp --- diff --git a/eigrpd/eigrp_network.c b/eigrpd/eigrp_network.c index ec8806750b..81597726e0 100644 --- a/eigrpd/eigrp_network.c +++ b/eigrpd/eigrp_network.c @@ -229,7 +229,7 @@ int eigrp_if_drop_allspfrouters(struct eigrp *top, struct prefix *p, return ret; } -int eigrp_network_set(struct eigrp *eigrp, struct prefix_ipv4 *p) +int eigrp_network_set(struct eigrp *eigrp, struct prefix *p) { struct route_node *rn; struct interface *ifp; @@ -334,21 +334,21 @@ void eigrp_if_update(struct interface *ifp) } } -int eigrp_network_unset(struct eigrp *eigrp, struct prefix_ipv4 *p) +int eigrp_network_unset(struct eigrp *eigrp, struct prefix *p) { struct route_node *rn; struct listnode *node, *nnode; struct eigrp_interface *ei; struct prefix *pref; - rn = route_node_lookup(eigrp->networks, (struct prefix *)p); + rn = route_node_lookup(eigrp->networks, p); if (rn == NULL) return 0; pref = rn->info; route_unlock_node(rn); - if (!IPV4_ADDR_SAME(&pref->u.prefix4, &p->prefix)) + if (!IPV4_ADDR_SAME(&pref->u.prefix4, &p->u.prefix4)) return 0; prefix_ipv4_free(rn->info); diff --git a/eigrpd/eigrp_network.h b/eigrpd/eigrp_network.h index e38f7ded40..6ddd57eee5 100644 --- a/eigrpd/eigrp_network.h +++ b/eigrpd/eigrp_network.h @@ -32,8 +32,8 @@ extern int eigrp_sock_init(void); extern int eigrp_if_ipmulticast(struct eigrp *, struct prefix *, unsigned int); -extern int eigrp_network_set(struct eigrp *, struct prefix_ipv4 *); -extern int eigrp_network_unset(struct eigrp *eigrp, struct prefix_ipv4 *p); +extern int eigrp_network_set(struct eigrp *eigrp, struct prefix *p); +extern int eigrp_network_unset(struct eigrp *eigrp, struct prefix *p); extern int eigrp_hello_timer(struct thread *); extern void eigrp_if_update(struct interface *); diff --git a/eigrpd/eigrp_vty.c b/eigrpd/eigrp_vty.c index 465007478d..4a8842f30e 100644 --- a/eigrpd/eigrp_vty.c +++ b/eigrpd/eigrp_vty.c @@ -391,10 +391,10 @@ DEFUN (eigrp_network, "EIGRP network prefix\n") { VTY_DECLVAR_CONTEXT(eigrp, eigrp); - struct prefix_ipv4 p; + struct prefix p; int ret; - str2prefix_ipv4(argv[1]->arg, &p); + str2prefix(argv[1]->arg, &p); ret = eigrp_network_set(eigrp, &p); @@ -414,10 +414,10 @@ DEFUN (no_eigrp_network, "EIGRP network prefix\n") { VTY_DECLVAR_CONTEXT(eigrp, eigrp); - struct prefix_ipv4 p; + struct prefix p; int ret; - str2prefix_ipv4(argv[2]->arg, &p); + str2prefix(argv[2]->arg, &p); ret = eigrp_network_unset(eigrp, &p);