/*
* Initialize zclient "update" and "lookup" sockets
*/
- if_zapi_callbacks(pim_ifp_create, pim_ifp_up,
- pim_ifp_down, pim_ifp_destroy);
+ pim_iface_init();
/* TODO PIM6: next line is temporary since pim_cmd_init is disabled */
if_cmd_init(NULL);
return count;
}
-int pim_ifp_create(struct interface *ifp)
+static int pim_ifp_create(struct interface *ifp)
{
struct pim_instance *pim;
return 0;
}
-int pim_ifp_up(struct interface *ifp)
+static int pim_ifp_up(struct interface *ifp)
{
struct pim_interface *pim_ifp;
struct pim_instance *pim;
return 0;
}
-int pim_ifp_down(struct interface *ifp)
+static int pim_ifp_down(struct interface *ifp)
{
if (PIM_DEBUG_ZEBRA) {
zlog_debug(
return 0;
}
-int pim_ifp_destroy(struct interface *ifp)
+static int pim_ifp_destroy(struct interface *ifp)
{
struct pim_instance *pim;
return 0;
}
+
+static int pim_if_new_hook(struct interface *ifp)
+{
+ return 0;
+}
+
+static int pim_if_delete_hook(struct interface *ifp)
+{
+ return 0;
+}
+
+void pim_iface_init(void)
+{
+ hook_register_prio(if_add, 0, pim_if_new_hook);
+ hook_register_prio(if_del, 0, pim_if_delete_hook);
+
+ if_zapi_callbacks(pim_ifp_create, pim_ifp_up, pim_ifp_down,
+ pim_ifp_destroy);
+}
int pim_if_ifchannel_count(struct pim_interface *pim_ifp);
-extern int pim_ifp_create(struct interface *ifp);
-extern int pim_ifp_up(struct interface *ifp);
-extern int pim_ifp_down(struct interface *ifp);
-extern int pim_ifp_destroy(struct interface *ifp);
+void pim_iface_init(void);
#endif /* PIM_IFACE_H */
/*
* Initialize zclient "update" and "lookup" sockets
*/
- if_zapi_callbacks(pim_ifp_create, pim_ifp_up,
- pim_ifp_down, pim_ifp_destroy);
+ pim_iface_init();
pim_zebra_init();
pim_bfd_init();
pim_mlag_init();