summaryrefslogtreecommitdiffstats
path: root/pbrd/pbr_vrf.c
diff options
context:
space:
mode:
Diffstat (limited to 'pbrd/pbr_vrf.c')
-rw-r--r--pbrd/pbr_vrf.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/pbrd/pbr_vrf.c b/pbrd/pbr_vrf.c
index 389e5e8be..328460740 100644
--- a/pbrd/pbr_vrf.c
+++ b/pbrd/pbr_vrf.c
@@ -26,6 +26,7 @@
#include "pbr_map.h"
#include "pbr_debug.h"
#include "pbr_nht.h"
+#include "pbr_zebra.h"
DEFINE_MTYPE_STATIC(PBRD, PBR_MAP_VRF, "PBR Map VRF")
@@ -137,3 +138,14 @@ void pbr_vrf_init(void)
vrf_init(pbr_vrf_new, pbr_vrf_enable, pbr_vrf_disable, pbr_vrf_delete,
NULL);
}
+
+void pbr_vrf_terminate(void)
+{
+ struct vrf *vrf;
+ struct interface *ifp;
+
+ RB_FOREACH (vrf, vrf_name_head, &vrfs_by_name) {
+ FOR_ALL_INTERFACES (vrf, ifp)
+ pbr_if_del(ifp);
+ }
+}