From 43ba41c1a3f01eeccbf7101bd4b531ec03e5a92e Mon Sep 17 00:00:00 2001 From: Philippe Guibert Date: Fri, 14 Jun 2019 13:50:05 +0200 Subject: [PATCH] bfdd: add the vrf update hook in case vrf name changes in case vrf name changes, use a hook to be notified about the vrf change. Signed-off-by: Philippe Guibert --- bfdd/bfd.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/bfdd/bfd.c b/bfdd/bfd.c index 2a41758bbc..a48dbb0ae2 100644 --- a/bfdd/bfd.c +++ b/bfdd/bfd.c @@ -1630,6 +1630,16 @@ static int bfd_vrf_delete(struct vrf *vrf) return 0; } +static int bfd_vrf_update(struct vrf *vrf) +{ + if (!vrf_is_enabled(vrf)) + return 0; + log_debug("VRF update: %s(%u)", vrf->name, vrf->vrf_id); + /* a different name is given; update bfd list */ + bfdd_sessions_enable_vrf(vrf); + return 0; +} + static int bfd_vrf_enable(struct vrf *vrf) { struct bfd_vrf_global *bvrf; @@ -1715,7 +1725,7 @@ static int bfd_vrf_disable(struct vrf *vrf) void bfd_vrf_init(void) { vrf_init(bfd_vrf_new, bfd_vrf_enable, bfd_vrf_disable, - bfd_vrf_delete, NULL); + bfd_vrf_delete, bfd_vrf_update); } void bfd_vrf_terminate(void) -- 2.39.5