summaryrefslogtreecommitdiff
path: root/sharpd/sharp_zebra.h
diff options
context:
space:
mode:
Diffstat (limited to 'sharpd/sharp_zebra.h')
-rw-r--r--sharpd/sharp_zebra.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/sharpd/sharp_zebra.h b/sharpd/sharp_zebra.h
index cf8689799a..5cbcc14665 100644
--- a/sharpd/sharp_zebra.h
+++ b/sharpd/sharp_zebra.h
@@ -8,6 +8,7 @@
#define __SHARP_ZEBRA_H__
extern void sharp_zebra_init(void);
+extern void sharp_zebra_terminate(void);
/* Add and delete extra zapi client sessions, for testing */
int sharp_zclient_create(uint32_t session_id);
@@ -39,17 +40,22 @@ int sharp_install_lsps_helper(bool install_p, bool update_p,
void sharp_opaque_send(uint32_t type, uint32_t proto, uint32_t instance,
uint32_t session_id, uint32_t count);
-/* Send OPAQUE registration messages, using subtype 'type'. */
+/* Send OPAQUE registration or notification registration messages,
+ * for opaque subtype 'type'.
+ */
void sharp_opaque_reg_send(bool is_reg, uint32_t proto, uint32_t instance,
uint32_t session_id, uint32_t type);
+/* Register/unregister for opaque notifications from zebra about 'type'. */
+void sharp_zebra_opaque_notif_reg(bool is_reg, uint32_t type);
+
extern void sharp_zebra_send_arp(const struct interface *ifp,
const struct prefix *p);
/* Register Link State Opaque messages */
extern void sharp_zebra_register_te(void);
-extern void sharp_redistribute_vrf(struct vrf *vrf, int source);
+extern void sharp_redistribute_vrf(struct vrf *vrf, int source, bool turn_on);
extern int sharp_zebra_srv6_manager_get_locator_chunk(const char *lname);
extern int sharp_zebra_srv6_manager_release_locator_chunk(const char *lname);
@@ -65,4 +71,6 @@ extern int sharp_zebra_send_tc_filter_rate(struct interface *ifp,
const struct prefix *destination,
uint8_t ip_proto, uint16_t src_port,
uint16_t dst_port, uint64_t rate);
+
+extern void sharp_zebra_register_neigh(vrf_id_t vrf_id, afi_t afi, bool reg);
#endif