]> git.proxmox.com Git - mirror_frr.git/commitdiff
eigrpd: Refactor eigrp_network_[un]set to use prefix
authorDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 23 Aug 2017 19:35:27 +0000 (15:35 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Thu, 24 Aug 2017 12:09:03 +0000 (08:09 -0400)
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
eigrpd/eigrp_network.c
eigrpd/eigrp_network.h
eigrpd/eigrp_vty.c

index ec8806750b986e8439524df29d7d565f037fd8c4..81597726e01ceea6e941aa5b9782748971531c48 100644 (file)
@@ -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);
index e38f7ded40dffb423f6a092c85873aa31af127fa..6ddd57eee5596df5e3aca66b9daab53cdfaabde3 100644 (file)
@@ -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 *);
index 465007478d940cfe328c187bf200a3196fc93f0e..4a8842f30e9c65dd8fb7101b3768cbd152e6b736 100644 (file)
@@ -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);