diff options
| author | Christian Hopps <chopps@labn.net> | 2023-04-09 05:02:51 -0400 |
|---|---|---|
| committer | Christian Hopps <chopps@labn.net> | 2023-04-11 15:27:05 -0400 |
| commit | efa2ca6ef0ec09625fc01a9106b183f750361767 (patch) | |
| tree | a29244c0838f1ae79aad82d1a9e35fb4db2909e4 /lib/if_rmap.h | |
| parent | 2eb44711146d15af97873e0ca87ea570f2d11de0 (diff) | |
lib: convert if_rmap to YANG northbound
- nice correspondence between new YANG grouping and shared library code.
- fixes bug with RIPNG use, certainly didn't work before.
- removes rip header from shared library code
- still has uses RIP_NODE/RIPNG_NODE as required by CLI foo.
Signed-off-by: Christian Hopps <chopps@labn.net>
Diffstat (limited to 'lib/if_rmap.h')
| -rw-r--r-- | lib/if_rmap.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/if_rmap.h b/lib/if_rmap.h index 3bdbc2a3b2..6f5fb578f0 100644 --- a/lib/if_rmap.h +++ b/lib/if_rmap.h @@ -6,15 +6,20 @@ #ifndef _ZEBRA_IF_RMAP_H #define _ZEBRA_IF_RMAP_H +#include "typesafe.h" + #ifdef __cplusplus extern "C" { #endif +struct lyd_node; +struct vty; + enum if_rmap_type { IF_RMAP_IN, IF_RMAP_OUT, IF_RMAP_MAX }; struct if_rmap { /* Name of the interface. */ - char *ifname; + const char *ifname; char *routemap[IF_RMAP_MAX]; }; @@ -45,6 +50,11 @@ void if_rmap_hook_delete(struct if_rmap_ctx *ctx, struct if_rmap *)); extern struct if_rmap *if_rmap_lookup(struct if_rmap_ctx *ctx, const char *ifname); +extern void if_rmap_yang_modify_cb(struct if_rmap_ctx *ctx, + const struct lyd_node *dnode, + enum if_rmap_type type, bool del); +extern void if_rmap_yang_destroy_cb(struct if_rmap_ctx *ctx, + const struct lyd_node *dnode); extern int config_write_if_rmap(struct vty *, struct if_rmap_ctx *ctx); #ifdef __cplusplus |
