From 30c30cdec06334939d0c2491023ec52750f98ddb Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Thu, 7 Dec 2017 18:35:29 -0500 Subject: [PATCH] zebra: Make zserv.h the true api for zapi northbound zserv.c had a grab bag of function declarations that did not belong in it. Move those to where they better belong. Signed-off-by: Donald Sharp --- zebra/interface.h | 2 ++ zebra/kernel_netlink.c | 1 + zebra/rib.h | 4 ++++ zebra/rt.h | 14 ++++++++++++++ zebra/rtread_getmsg.c | 2 +- zebra/rtread_netlink.c | 2 +- zebra/rtread_sysctl.c | 1 - zebra/zebra_ns.c | 1 + zebra/zebra_routemap.h | 1 + zebra/zserv.h | 16 ---------------- 10 files changed, 25 insertions(+), 19 deletions(-) diff --git a/zebra/interface.h b/zebra/interface.h index 6bc05e21c5d0..61b438ecb2c8 100644 --- a/zebra/interface.h +++ b/zebra/interface.h @@ -308,6 +308,8 @@ static inline void zebra_if_set_ziftype(struct interface *ifp, #define IS_ZEBRA_IF_VRF_SLAVE(ifp) \ (((struct zebra_if *)(ifp->info))->zif_slave_type == ZEBRA_IF_SLAVE_VRF) +extern void zebra_if_init(void); + extern struct interface *if_lookup_by_index_per_ns(struct zebra_ns *, u_int32_t); extern struct interface *if_lookup_by_name_per_ns(struct zebra_ns *, diff --git a/zebra/kernel_netlink.c b/zebra/kernel_netlink.c index a5c36b0daedc..1be2cbcaf54e 100644 --- a/zebra/kernel_netlink.c +++ b/zebra/kernel_netlink.c @@ -40,6 +40,7 @@ #include "zebra/zserv.h" #include "zebra/zebra_ns.h" #include "zebra/zebra_vrf.h" +#include "zebra/rt.h" #include "zebra/debug.h" #include "zebra/kernel_netlink.h" #include "zebra/rt_netlink.h" diff --git a/zebra/rib.h b/zebra/rib.h index 818844cb6d55..4b82e8d8d5b9 100644 --- a/zebra/rib.h +++ b/zebra/rib.h @@ -435,4 +435,8 @@ static inline void rib_tables_iter_cleanup(rib_tables_iter_t *iter) DECLARE_HOOK(rib_update, (struct route_node * rn, const char *reason), (rn, reason)) + +extern void zebra_vty_init(void); +extern pid_t pid; + #endif /*_ZEBRA_RIB_H */ diff --git a/zebra/rt.h b/zebra/rt.h index 6bbe69e98339..424319878d4d 100644 --- a/zebra/rt.h +++ b/zebra/rt.h @@ -112,4 +112,18 @@ extern int kernel_add_neigh(struct interface *ifp, struct ipaddr *ip, struct ethaddr *mac); extern int kernel_del_neigh(struct interface *ifp, struct ipaddr *ip); +/* + * Southbound Initialization routines to get initial starting + * state. + */ +extern void interface_list(struct zebra_ns *zns); +extern void kernel_init(struct zebra_ns *zns); +extern void kernel_terminate(struct zebra_ns *zns); +extern void macfdb_read(struct zebra_ns *zns); +extern void macfdb_read_for_bridge(struct zebra_ns *zns, struct interface *ifp, + struct interface *br_if); +extern void neigh_read(struct zebra_ns *zns); +extern void neigh_read_for_vlan(struct zebra_ns *zns, struct interface *ifp); +extern void route_read(struct zebra_ns *zns); + #endif /* _ZEBRA_RT_H */ diff --git a/zebra/rtread_getmsg.c b/zebra/rtread_getmsg.c index 62f3224b6e87..39ecdb335c60 100644 --- a/zebra/rtread_getmsg.c +++ b/zebra/rtread_getmsg.c @@ -30,7 +30,7 @@ #include "vty.h" #include "zebra/rib.h" -#include "zebra/zserv.h" +#include "zebra/rt.h" /* Thank you, Solaris, for polluting application symbol namespace. */ #undef hook_register diff --git a/zebra/rtread_netlink.c b/zebra/rtread_netlink.c index f38cba65e737..ec29d1820ece 100644 --- a/zebra/rtread_netlink.c +++ b/zebra/rtread_netlink.c @@ -24,7 +24,7 @@ #ifdef GNU_LINUX #include "vty.h" -#include "zebra/zserv.h" +#include "zebra/rt.h" #include "zebra/rt_netlink.h" void route_read(struct zebra_ns *zns) diff --git a/zebra/rtread_sysctl.c b/zebra/rtread_sysctl.c index 53ed0e7906be..4f5a80612ee6 100644 --- a/zebra/rtread_sysctl.c +++ b/zebra/rtread_sysctl.c @@ -28,7 +28,6 @@ #include "log.h" #include "vrf.h" -#include "zebra/zserv.h" #include "zebra/rt.h" #include "zebra/kernel_socket.h" diff --git a/zebra/zebra_ns.c b/zebra/zebra_ns.c index 78072f43bb9e..602dc5ea419c 100644 --- a/zebra/zebra_ns.c +++ b/zebra/zebra_ns.c @@ -29,6 +29,7 @@ #include "zebra_ns.h" #include "zebra_vrf.h" #include "zebra_memory.h" +#include "rt.h" DEFINE_MTYPE(ZEBRA, ZEBRA_NS, "Zebra Name Space") diff --git a/zebra/zebra_routemap.h b/zebra/zebra_routemap.h index 1f95c7f83c7b..60bf7c3f5941 100644 --- a/zebra/zebra_routemap.h +++ b/zebra/zebra_routemap.h @@ -22,6 +22,7 @@ #ifndef __ZEBRA_ROUTEMAP_H__ #define __ZEBRA_ROUTEMAP_H__ +extern void zebra_route_map_init(void); extern void zebra_routemap_config_write_protocol(struct vty *vty); extern char *zebra_get_import_table_route_map(afi_t afi, uint32_t table); extern void zebra_add_import_table_route_map(afi_t afi, const char *rmap_name, diff --git a/zebra/zserv.h b/zebra/zserv.h index 2d072ed63f80..c4b4e20df293 100644 --- a/zebra/zserv.h +++ b/zebra/zserv.h @@ -149,21 +149,7 @@ extern unsigned int multipath_num; /* Prototypes. */ extern void zserv_init(void); -extern void zebra_if_init(void); extern void zebra_zserv_socket_init(char *path); -extern void hostinfo_get(void); -extern void rib_init(void); -extern void interface_list(struct zebra_ns *); -extern void route_read(struct zebra_ns *); -extern void macfdb_read(struct zebra_ns *); -extern void macfdb_read_for_bridge(struct zebra_ns *, struct interface *, - struct interface *); -extern void neigh_read(struct zebra_ns *); -extern void neigh_read_for_vlan(struct zebra_ns *, struct interface *); -extern void kernel_init(struct zebra_ns *); -extern void kernel_terminate(struct zebra_ns *); -extern void zebra_route_map_init(void); -extern void zebra_vty_init(void); extern int zsend_vrf_add(struct zserv *, struct zebra_vrf *); extern int zsend_vrf_delete(struct zserv *, struct zebra_vrf *); @@ -189,8 +175,6 @@ extern int zsend_route_notify_owner(u_char proto, u_short instance, vrf_id_t vrf_id, struct prefix *p, enum zapi_route_notify_owner note); -extern pid_t pid; - extern void zserv_create_header(struct stream *s, uint16_t cmd, vrf_id_t vrf_id); extern void zserv_nexthop_num_warn(const char *, const struct prefix *,