summaryrefslogtreecommitdiffstats
path: root/eigrpd
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2019-09-19 04:26:55 +0200
committerDonald Sharp <sharpd@cumulusnetworks.com>2019-09-19 19:34:06 +0200
commitef7bd2a3d5ecab37018f4035391f99c25ddadeab (patch)
treee5fb8c3b974e01a2f1ad848b6337583b49efe374 /eigrpd
parent*: Add infrastructure to support zapi interface callbacks (diff)
downloadfrr-ef7bd2a3d5ecab37018f4035391f99c25ddadeab.tar.xz
frr-ef7bd2a3d5ecab37018f4035391f99c25ddadeab.zip
*: Switch all zclient->interface_add to interface create callback
Switch the zclient->interface_add functionality to have everyone use the interface create callback in lib/if.c Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'eigrpd')
-rw-r--r--eigrpd/eigrp_interface.c9
-rw-r--r--eigrpd/eigrp_zebra.c22
2 files changed, 9 insertions, 22 deletions
diff --git a/eigrpd/eigrp_interface.c b/eigrpd/eigrp_interface.c
index 76e101b01..f2faf22e8 100644
--- a/eigrpd/eigrp_interface.c
+++ b/eigrpd/eigrp_interface.c
@@ -124,6 +124,15 @@ int eigrp_if_delete_hook(struct interface *ifp)
static int eigrp_ifp_create(struct interface *ifp)
{
+ struct eigrp_interface *ei = ifp->info;
+
+ if (!ei)
+ return 0;
+
+ ei->params.type = eigrp_default_iftype(ifp);
+
+ eigrp_if_update(ifp);
+
return 0;
}
diff --git a/eigrpd/eigrp_zebra.c b/eigrpd/eigrp_zebra.c
index 63cbe84ef..8c8f73b5b 100644
--- a/eigrpd/eigrp_zebra.c
+++ b/eigrpd/eigrp_zebra.c
@@ -53,7 +53,6 @@
#include "eigrpd/eigrp_topology.h"
#include "eigrpd/eigrp_fsm.h"
-static int eigrp_interface_add(ZAPI_CALLBACK_ARGS);
static int eigrp_interface_delete(ZAPI_CALLBACK_ARGS);
static int eigrp_interface_address_add(ZAPI_CALLBACK_ARGS);
static int eigrp_interface_address_delete(ZAPI_CALLBACK_ARGS);
@@ -114,7 +113,6 @@ void eigrp_zebra_init(void)
zclient_init(zclient, ZEBRA_ROUTE_EIGRP, 0, &eigrpd_privs);
zclient->zebra_connected = eigrp_zebra_connected;
zclient->router_id_update = eigrp_router_id_update_zebra;
- zclient->interface_add = eigrp_interface_add;
zclient->interface_delete = eigrp_interface_delete;
zclient->interface_up = eigrp_interface_state_up;
zclient->interface_down = eigrp_interface_state_down;
@@ -151,26 +149,6 @@ static int eigrp_zebra_read_route(ZAPI_CALLBACK_ARGS)
return 0;
}
-/* Inteface addition message from zebra. */
-static int eigrp_interface_add(ZAPI_CALLBACK_ARGS)
-{
- struct interface *ifp;
- struct eigrp_interface *ei;
-
- ifp = zebra_interface_add_read(zclient->ibuf, vrf_id);
-
- if (!ifp->info)
- return 0;
-
- ei = ifp->info;
-
- ei->params.type = eigrp_default_iftype(ifp);
-
- eigrp_if_update(ifp);
-
- return 0;
-}
-
static int eigrp_interface_delete(ZAPI_CALLBACK_ARGS)
{
struct interface *ifp;