diff options
author | Mark Stapp <mjs@voltanet.io> | 2019-03-21 19:26:54 +0100 |
---|---|---|
committer | Mark Stapp <mjs@voltanet.io> | 2019-04-10 22:07:01 +0200 |
commit | cf363e1bd86a2594aa3698d4e6561cfe14ea7d9a (patch) | |
tree | 405c3e9d7b8798c92cb83df16a476acdc40e183a /zebra/zebra_dplane.h | |
parent | Merge pull request #3779 from opensourcerouting/fix-mpls-label-topotests (diff) | |
download | frr-cf363e1bd86a2594aa3698d4e6561cfe14ea7d9a.tar.xz frr-cf363e1bd86a2594aa3698d4e6561cfe14ea7d9a.zip |
zebra: dataplane notifications for system route changes
Add notifications from zebra to the dataplane subsystem when
kernel or connected routes change.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
Diffstat (limited to 'zebra/zebra_dplane.h')
-rw-r--r-- | zebra/zebra_dplane.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/zebra/zebra_dplane.h b/zebra/zebra_dplane.h index 1246fcc8e..4e089bc66 100644 --- a/zebra/zebra_dplane.h +++ b/zebra/zebra_dplane.h @@ -114,8 +114,15 @@ enum dplane_op_e { /* Pseudowire update */ DPLANE_OP_PW_INSTALL, DPLANE_OP_PW_UNINSTALL, + + /* System route notification */ + DPLANE_OP_SYS_ROUTE_ADD, + DPLANE_OP_SYS_ROUTE_DELETE, }; +/* Enable system route notifications */ +void dplane_enable_sys_route_notifs(void); + /* * The dataplane context struct is used to exchange info between the main zebra * context and the dataplane module(s). If these are two independent pthreads, @@ -249,6 +256,12 @@ enum zebra_dplane_result dplane_route_update(struct route_node *rn, enum zebra_dplane_result dplane_route_delete(struct route_node *rn, struct route_entry *re); +/* Notify the dplane when system/connected routes change */ +enum zebra_dplane_result dplane_sys_route_add(struct route_node *rn, + struct route_entry *re); +enum zebra_dplane_result dplane_sys_route_del(struct route_node *rn, + struct route_entry *re); + /* * Enqueue LSP change operations for the dataplane. */ |