summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--babeld/babel_main.c2
-rw-r--r--ospf6d/ospf6_main.c1
-rw-r--r--ospf6d/ospf6_top.c13
-rw-r--r--ospf6d/ospf6_top.h2
-rw-r--r--ospfd/ospf_main.c1
-rw-r--r--ospfd/ospfd.c2
-rw-r--r--pbrd/pbr_main.c2
-rw-r--r--pbrd/pbr_zebra.c10
-rw-r--r--pbrd/pbr_zebra.h1
-rw-r--r--pimd/pim_vxlan.c3
-rw-r--r--ripd/rip_main.c12
-rw-r--r--ripngd/ripng_main.c12
-rw-r--r--sharpd/sharp_main.c31
-rw-r--r--sharpd/sharp_zebra.c14
-rw-r--r--sharpd/sharp_zebra.h1
-rw-r--r--tests/topotests/bgp_prefix_sid2/r1/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_over_ipv6/r1/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_over_ipv6/r2/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_over_ipv6/r3/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_route_leak/pe1/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_sid/r1/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_sid/r1/zebra.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_sid/r2/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_sid/r2/zebra.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/zebra.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/zebra.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/zebra.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/zebra.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/zebra.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/bgpd.conf1
-rw-r--r--tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/zebra.conf1
-rw-r--r--tests/topotests/bgp_vrf_leaking_5549_routes/ce1/bgpd.conf1
-rw-r--r--tests/topotests/bgp_vrf_leaking_5549_routes/pe1/bgpd.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo1/rt1/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo1/rt2/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo1/rt3/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt0/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt1/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt2/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt3/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt4/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt5/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt6/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt7/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt8/zebra.conf1
-rw-r--r--tests/topotests/isis_sr_flex_algo_topo2/rt9/zebra.conf1
-rw-r--r--tests/topotests/srv6_locator/r1/sharpd.conf1
-rw-r--r--tests/topotests/srv6_locator/r1/zebra.conf1
-rw-r--r--tests/topotests/srv6_locator_custom_bits_length/r1/sharpd.conf1
-rw-r--r--tests/topotests/srv6_locator_custom_bits_length/r1/zebra.conf1
-rw-r--r--tests/topotests/srv6_locator_usid/r1/sharpd.conf1
-rw-r--r--tests/topotests/srv6_locator_usid/r1/zebra.conf1
-rw-r--r--tests/topotests/srv6_static_route/r1/staticd.conf1
-rw-r--r--tests/topotests/srv6_static_route/r1/zebra.conf1
-rw-r--r--tests/topotests/zebra_seg6_route/r1/zebra.conf1
-rw-r--r--tests/topotests/zebra_seg6local_route/r1/zebra.conf1
-rw-r--r--zebra/kernel_netlink.c5
-rw-r--r--zebra/zebra_mlag.c2
-rw-r--r--zebra/zebra_vrf.c6
64 files changed, 109 insertions, 57 deletions
diff --git a/babeld/babel_main.c b/babeld/babel_main.c
index 4ca649e2c2..c751e49651 100644
--- a/babeld/babel_main.c
+++ b/babeld/babel_main.c
@@ -308,6 +308,8 @@ babel_exit_properly(void)
babel_save_state_file();
debugf(BABEL_DEBUG_COMMON, "Remove pid file.");
debugf(BABEL_DEBUG_COMMON, "Done.");
+
+ vrf_terminate();
frr_fini();
exit(0);
diff --git a/ospf6d/ospf6_main.c b/ospf6d/ospf6_main.c
index 932304578a..2a189f1418 100644
--- a/ospf6d/ospf6_main.c
+++ b/ospf6d/ospf6_main.c
@@ -103,6 +103,7 @@ static void __attribute__((noreturn)) ospf6_exit(int status)
zclient_free(zclient);
}
+ ospf6_master_delete();
frr_fini();
exit(status);
}
diff --git a/ospf6d/ospf6_top.c b/ospf6d/ospf6_top.c
index aa0625814c..ef312cbe3a 100644
--- a/ospf6d/ospf6_top.c
+++ b/ospf6d/ospf6_top.c
@@ -486,6 +486,7 @@ void ospf6_delete(struct ospf6 *o)
struct ospf6_area *oa;
struct vrf *vrf;
struct ospf6_external_aggr_rt *aggr;
+ uint32_t i;
QOBJ_UNREG(o);
@@ -532,6 +533,13 @@ void ospf6_delete(struct ospf6 *o)
}
route_table_finish(o->rt_aggr_tbl);
+ for (i = 0; i <= ZEBRA_ROUTE_MAX; i++) {
+ if (!o->redist[i])
+ continue;
+
+ list_delete(&o->redist[i]);
+ }
+
XFREE(MTYPE_OSPF6_TOP, o->name);
XFREE(MTYPE_OSPF6_TOP, o);
}
@@ -576,6 +584,11 @@ void ospf6_master_init(struct event_loop *master)
om6->master = master;
}
+void ospf6_master_delete(void)
+{
+ list_delete(&om6->ospf6);
+}
+
static void ospf6_maxage_remover(struct event *thread)
{
struct ospf6 *o = (struct ospf6 *)EVENT_ARG(thread);
diff --git a/ospf6d/ospf6_top.h b/ospf6d/ospf6_top.h
index a38dad8fce..8288413c10 100644
--- a/ospf6d/ospf6_top.h
+++ b/ospf6d/ospf6_top.h
@@ -236,6 +236,8 @@ extern struct ospf6_master *om6;
/* prototypes */
extern void ospf6_master_init(struct event_loop *master);
+extern void ospf6_master_delete(void);
+
extern void install_element_ospf6_clear_process(void);
extern void ospf6_top_init(void);
extern void ospf6_delete(struct ospf6 *o);
diff --git a/ospfd/ospf_main.c b/ospfd/ospf_main.c
index dd000241f4..a2a1c4a94f 100644
--- a/ospfd/ospf_main.c
+++ b/ospfd/ospf_main.c
@@ -89,6 +89,7 @@ static void sigint(void)
zlog_notice("Terminating on signal");
bfd_protocol_integration_set_shutdown(true);
ospf_terminate();
+
exit(0);
}
diff --git a/ospfd/ospfd.c b/ospfd/ospfd.c
index 9ed1d301f5..c46d2e278e 100644
--- a/ospfd/ospfd.c
+++ b/ospfd/ospfd.c
@@ -595,6 +595,7 @@ static void ospf_deferred_shutdown_finish(struct ospf *ospf)
/* ospfd being shut-down? If so, was this the last ospf instance? */
if (CHECK_FLAG(om->options, OSPF_MASTER_SHUTDOWN)
&& (listcount(om->ospf) == 0)) {
+ route_map_finish();
frr_fini();
exit(0);
}
@@ -678,6 +679,7 @@ void ospf_terminate(void)
/* Cleanup vrf info */
ospf_vrf_terminate();
+ route_map_finish();
/* Deliberately go back up, hopefully to thread scheduler, as
* One or more ospf_finish()'s may have deferred shutdown to a timer
* thread
diff --git a/pbrd/pbr_main.c b/pbrd/pbr_main.c
index 6699079a68..dd4893bb78 100644
--- a/pbrd/pbr_main.c
+++ b/pbrd/pbr_main.c
@@ -71,6 +71,8 @@ static void sigint(void)
pbr_vrf_terminate();
+ pbr_zebra_destroy();
+
frr_fini();
exit(0);
diff --git a/pbrd/pbr_zebra.c b/pbrd/pbr_zebra.c
index 30eaf62902..d47a308ac8 100644
--- a/pbrd/pbr_zebra.c
+++ b/pbrd/pbr_zebra.c
@@ -419,6 +419,16 @@ void pbr_zebra_init(void)
zclient->zebra_connected = zebra_connected;
}
+void pbr_zebra_destroy(void)
+{
+ if (zclient == NULL)
+ return;
+
+ zclient_stop(zclient);
+ zclient_free(zclient);
+ zclient = NULL;
+}
+
void pbr_send_rnh(struct nexthop *nhop, bool reg)
{
uint32_t command;
diff --git a/pbrd/pbr_zebra.h b/pbrd/pbr_zebra.h
index ef844ef797..5cbb1fd682 100644
--- a/pbrd/pbr_zebra.h
+++ b/pbrd/pbr_zebra.h
@@ -14,6 +14,7 @@ struct pbr_interface {
extern struct event_loop *master;
extern void pbr_zebra_init(void);
+extern void pbr_zebra_destroy(void);
extern void route_add(struct pbr_nexthop_group_cache *pnhgc,
struct nexthop_group nhg, afi_t install_afi);
diff --git a/pimd/pim_vxlan.c b/pimd/pim_vxlan.c
index 9650da89a8..06bd394167 100644
--- a/pimd/pim_vxlan.c
+++ b/pimd/pim_vxlan.c
@@ -1210,6 +1210,9 @@ void pim_vxlan_exit(struct pim_instance *pim)
{
hash_clean_and_free(&pim->vxlan.sg_hash,
(void (*)(void *))pim_vxlan_sg_del_item);
+
+ if (vxlan_info.work_list)
+ list_delete(&vxlan_info.work_list);
}
void pim_vxlan_terminate(void)
diff --git a/ripd/rip_main.c b/ripd/rip_main.c
index ac358ebbaf..3f52bebe95 100644
--- a/ripd/rip_main.c
+++ b/ripd/rip_main.c
@@ -67,12 +67,24 @@ static void sighup(void)
/* SIGINT handler. */
static void sigint(void)
{
+ struct vrf *vrf;
+
zlog_notice("Terminating on signal");
bfd_protocol_integration_set_shutdown(true);
+
+ RB_FOREACH (vrf, vrf_name_head, &vrfs_by_name) {
+ if (!vrf->info)
+ continue;
+
+ rip_clean(vrf->info);
+ }
+
rip_vrf_terminate();
if_rmap_terminate();
rip_zclient_stop();
+
+ route_map_finish();
frr_fini();
exit(0);
diff --git a/ripngd/ripng_main.c b/ripngd/ripng_main.c
index 9933dae5cd..a799943be1 100644
--- a/ripngd/ripng_main.c
+++ b/ripngd/ripng_main.c
@@ -66,11 +66,23 @@ static void sighup(void)
/* SIGINT handler. */
static void sigint(void)
{
+ struct vrf *vrf;
+
zlog_notice("Terminating on signal");
+ RB_FOREACH (vrf, vrf_name_head, &vrfs_by_name) {
+ if (!vrf->info)
+ continue;
+
+ ripng_clean(vrf->info);
+ }
+
ripng_vrf_terminate();
if_rmap_terminate();
ripng_zebra_stop();
+
+ route_map_finish();
+
frr_fini();
exit(0);
}
diff --git a/sharpd/sharp_main.c b/sharpd/sharp_main.c
index fa85c2b448..0cbed5579d 100644
--- a/sharpd/sharp_main.c
+++ b/sharpd/sharp_main.c
@@ -54,6 +54,22 @@ struct zebra_privs_t sharp_privs = {
struct option longopts[] = {{0}};
+struct sharp_global sg;
+
+static void sharp_global_init(void)
+{
+ memset(&sg, 0, sizeof(sg));
+ sg.nhs = list_new();
+ sg.ted = NULL;
+ sg.srv6_locators = list_new();
+}
+
+static void sharp_global_destroy(void)
+{
+ list_delete(&sg.nhs);
+ list_delete(&sg.srv6_locators);
+}
+
/* Master of threads. */
struct event_loop *master;
@@ -68,6 +84,11 @@ static void sigint(void)
{
zlog_notice("Terminating on signal");
+ vrf_terminate();
+ sharp_zebra_terminate();
+
+ sharp_global_destroy();
+
frr_fini();
exit(0);
@@ -118,16 +139,6 @@ FRR_DAEMON_INFO(sharpd, SHARP, .vty_port = SHARP_VTY_PORT,
.n_yang_modules = array_size(sharpd_yang_modules),
);
-struct sharp_global sg;
-
-static void sharp_global_init(void)
-{
- memset(&sg, 0, sizeof(sg));
- sg.nhs = list_new();
- sg.ted = NULL;
- sg.srv6_locators = list_new();
-}
-
static void sharp_start_configuration(void)
{
zlog_debug("Configuration has started to be read");
diff --git a/sharpd/sharp_zebra.c b/sharpd/sharp_zebra.c
index 30bf4f30e1..fde9f9f544 100644
--- a/sharpd/sharp_zebra.c
+++ b/sharpd/sharp_zebra.c
@@ -1089,3 +1089,17 @@ void sharp_zebra_init(void)
zclient->zebra_connected = zebra_connected;
zclient->zebra_buffer_write_ready = sharp_zclient_buffer_ready;
}
+
+void sharp_zebra_terminate(void)
+{
+ struct sharp_zclient *node = sharp_clients_head;
+
+ while (node) {
+ sharp_zclient_delete(node->client->session_id);
+
+ node = sharp_clients_head;
+ }
+
+ zclient_stop(zclient);
+ zclient_free(zclient);
+}
diff --git a/sharpd/sharp_zebra.h b/sharpd/sharp_zebra.h
index 025b4d8f82..6314f862f5 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);
diff --git a/tests/topotests/bgp_prefix_sid2/r1/bgpd.conf b/tests/topotests/bgp_prefix_sid2/r1/bgpd.conf
index ddc1f07e42..55b8f5536c 100644
--- a/tests/topotests/bgp_prefix_sid2/r1/bgpd.conf
+++ b/tests/topotests/bgp_prefix_sid2/r1/bgpd.conf
@@ -1,5 +1,4 @@
log stdout notifications
-log monitor notifications
!log commands
!
!debug bgp zebra
diff --git a/tests/topotests/bgp_srv6l3vpn_over_ipv6/r1/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_over_ipv6/r1/bgpd.conf
index 22b9014291..e8c14ab08f 100644
--- a/tests/topotests/bgp_srv6l3vpn_over_ipv6/r1/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_over_ipv6/r1/bgpd.conf
@@ -4,7 +4,6 @@ hostname r1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
router bgp 65001
diff --git a/tests/topotests/bgp_srv6l3vpn_over_ipv6/r2/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_over_ipv6/r2/bgpd.conf
index 42b9d511d9..88de28108a 100644
--- a/tests/topotests/bgp_srv6l3vpn_over_ipv6/r2/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_over_ipv6/r2/bgpd.conf
@@ -4,7 +4,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
router bgp 65002
diff --git a/tests/topotests/bgp_srv6l3vpn_over_ipv6/r3/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_over_ipv6/r3/bgpd.conf
index 339b4eb089..443a64aa0a 100644
--- a/tests/topotests/bgp_srv6l3vpn_over_ipv6/r3/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_over_ipv6/r3/bgpd.conf
@@ -4,7 +4,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
router bgp 65001
diff --git a/tests/topotests/bgp_srv6l3vpn_route_leak/pe1/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_route_leak/pe1/bgpd.conf
index 15779aa0d5..3d9c2cfd17 100644
--- a/tests/topotests/bgp_srv6l3vpn_route_leak/pe1/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_route_leak/pe1/bgpd.conf
@@ -4,7 +4,6 @@ hostname pe1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
router bgp 65001
diff --git a/tests/topotests/bgp_srv6l3vpn_sid/r1/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_sid/r1/bgpd.conf
index bfc9db960a..8805009f9e 100644
--- a/tests/topotests/bgp_srv6l3vpn_sid/r1/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_sid/r1/bgpd.conf
@@ -4,7 +4,6 @@ hostname r1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug bgp neighbor-events
diff --git a/tests/topotests/bgp_srv6l3vpn_sid/r1/zebra.conf b/tests/topotests/bgp_srv6l3vpn_sid/r1/zebra.conf
index cf31a5c11b..be43805386 100644
--- a/tests/topotests/bgp_srv6l3vpn_sid/r1/zebra.conf
+++ b/tests/topotests/bgp_srv6l3vpn_sid/r1/zebra.conf
@@ -4,7 +4,6 @@ hostname r1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/bgp_srv6l3vpn_sid/r2/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_sid/r2/bgpd.conf
index 892a9f73e5..0770a96d2d 100644
--- a/tests/topotests/bgp_srv6l3vpn_sid/r2/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_sid/r2/bgpd.conf
@@ -4,7 +4,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug bgp neighbor-events
diff --git a/tests/topotests/bgp_srv6l3vpn_sid/r2/zebra.conf b/tests/topotests/bgp_srv6l3vpn_sid/r2/zebra.conf
index 9771ee1cd7..70627adc61 100644
--- a/tests/topotests/bgp_srv6l3vpn_sid/r2/zebra.conf
+++ b/tests/topotests/bgp_srv6l3vpn_sid/r2/zebra.conf
@@ -4,7 +4,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/bgpd.conf
index d113db12b1..8079bb0c2a 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/bgpd.conf
@@ -6,7 +6,6 @@ hostname r1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug bgp neighbor-events
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/zebra.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/zebra.conf
index 8ccf7a2a34..c84106f2bb 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/zebra.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r1/zebra.conf
@@ -4,7 +4,6 @@ hostname r1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
! debug zebra packet
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/bgpd.conf
index 9a7831dd2a..c2e8530273 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/bgpd.conf
@@ -6,7 +6,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug bgp neighbor-events
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/zebra.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/zebra.conf
index 839454d8a8..5c12429ff2 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/zebra.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf/r2/zebra.conf
@@ -4,7 +4,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
! debug zebra packet
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/bgpd.conf
index 30a0f8fe78..12b9e8fd00 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/bgpd.conf
@@ -6,7 +6,6 @@ hostname r1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug bgp neighbor-events
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/zebra.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/zebra.conf
index cbc5ce1f09..f202493c53 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/zebra.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r1/zebra.conf
@@ -4,7 +4,6 @@ hostname r1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/bgpd.conf
index 7ca23002ac..db36c180a0 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/bgpd.conf
@@ -6,7 +6,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug bgp neighbor-events
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/zebra.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/zebra.conf
index 449ca74d5e..9dfed4f2d6 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/zebra.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf2/r2/zebra.conf
@@ -4,7 +4,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/bgpd.conf
index 01b0cc3c9e..57c19e25d7 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/bgpd.conf
@@ -6,7 +6,6 @@ hostname r1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug bgp neighbor-events
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/zebra.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/zebra.conf
index f913b9f002..dd8a756a6e 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/zebra.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r1/zebra.conf
@@ -4,7 +4,6 @@ hostname r1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/bgpd.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/bgpd.conf
index 8700f12d63..abf4971a9b 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/bgpd.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/bgpd.conf
@@ -6,7 +6,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug bgp neighbor-events
diff --git a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/zebra.conf b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/zebra.conf
index 201d0cce23..3c9e4e3b25 100644
--- a/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/zebra.conf
+++ b/tests/topotests/bgp_srv6l3vpn_to_bgp_vrf3/r2/zebra.conf
@@ -4,7 +4,6 @@ hostname r2
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/bgp_vrf_leaking_5549_routes/ce1/bgpd.conf b/tests/topotests/bgp_vrf_leaking_5549_routes/ce1/bgpd.conf
index 66493f0fea..eb2563d5a9 100644
--- a/tests/topotests/bgp_vrf_leaking_5549_routes/ce1/bgpd.conf
+++ b/tests/topotests/bgp_vrf_leaking_5549_routes/ce1/bgpd.conf
@@ -4,7 +4,6 @@ hostname ce1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
router bgp 65002
diff --git a/tests/topotests/bgp_vrf_leaking_5549_routes/pe1/bgpd.conf b/tests/topotests/bgp_vrf_leaking_5549_routes/pe1/bgpd.conf
index c5c99270e7..bbc5ae502f 100644
--- a/tests/topotests/bgp_vrf_leaking_5549_routes/pe1/bgpd.conf
+++ b/tests/topotests/bgp_vrf_leaking_5549_routes/pe1/bgpd.conf
@@ -4,7 +4,6 @@ hostname pe1
password zebra
!
log stdout notifications
-log monitor notifications
log commands
!
router bgp 65001
diff --git a/tests/topotests/isis_sr_flex_algo_topo1/rt1/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo1/rt1/zebra.conf
index 5140eda73a..92b619ee57 100644
--- a/tests/topotests/isis_sr_flex_algo_topo1/rt1/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo1/rt1/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt1
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo1/rt2/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo1/rt2/zebra.conf
index 388348fced..3ea5e0a0a6 100644
--- a/tests/topotests/isis_sr_flex_algo_topo1/rt2/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo1/rt2/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt2
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo1/rt3/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo1/rt3/zebra.conf
index fb45ee1282..ea35de80c4 100644
--- a/tests/topotests/isis_sr_flex_algo_topo1/rt3/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo1/rt3/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt3
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt0/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt0/zebra.conf
index 89837d4cf5..a4b1f2a655 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt0/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt0/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt0
!
!log stdout notifications
-!log monitor notifications
!log commands
!
debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt1/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt1/zebra.conf
index 25a96290ae..f11daa5c2a 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt1/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt1/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt1
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt2/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt2/zebra.conf
index d739a732a9..ca3235aee5 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt2/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt2/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt2
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt3/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt3/zebra.conf
index 5c3bed0763..9a999104c9 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt3/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt3/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt3
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt4/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt4/zebra.conf
index 9c00013e70..5037041514 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt4/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt4/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt4
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt5/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt5/zebra.conf
index 61c599db7b..5f96fd4ae7 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt5/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt5/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt5
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt6/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt6/zebra.conf
index b63401e114..23a99a0c93 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt6/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt6/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt6
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt7/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt7/zebra.conf
index b5a28c7f1a..9be1b488cc 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt7/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt7/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt7
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt8/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt8/zebra.conf
index dd63f8cc2f..eaaac74fc3 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt8/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt8/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt8
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/isis_sr_flex_algo_topo2/rt9/zebra.conf b/tests/topotests/isis_sr_flex_algo_topo2/rt9/zebra.conf
index 378a1969be..513cf56102 100644
--- a/tests/topotests/isis_sr_flex_algo_topo2/rt9/zebra.conf
+++ b/tests/topotests/isis_sr_flex_algo_topo2/rt9/zebra.conf
@@ -3,7 +3,6 @@ log file zebra.log
hostname rt9
!
log stdout notifications
-log monitor notifications
log commands
!
!debug zebra packet
diff --git a/tests/topotests/srv6_locator/r1/sharpd.conf b/tests/topotests/srv6_locator/r1/sharpd.conf
index d46085935c..371e6f694a 100644
--- a/tests/topotests/srv6_locator/r1/sharpd.conf
+++ b/tests/topotests/srv6_locator/r1/sharpd.conf
@@ -1,7 +1,6 @@
hostname r1
!
log stdout notifications
-log monitor notifications
log commands
log file sharpd.log debugging
!
diff --git a/tests/topotests/srv6_locator/r1/zebra.conf b/tests/topotests/srv6_locator/r1/zebra.conf
index 85001d710e..695cf0a73c 100644
--- a/tests/topotests/srv6_locator/r1/zebra.conf
+++ b/tests/topotests/srv6_locator/r1/zebra.conf
@@ -4,7 +4,6 @@ hostname r1
! debug zebra rib detailed
!
log stdout notifications
-log monitor notifications
log commands
log file zebra.log debugging
!
diff --git a/tests/topotests/srv6_locator_custom_bits_length/r1/sharpd.conf b/tests/topotests/srv6_locator_custom_bits_length/r1/sharpd.conf
index d46085935c..371e6f694a 100644
--- a/tests/topotests/srv6_locator_custom_bits_length/r1/sharpd.conf
+++ b/tests/topotests/srv6_locator_custom_bits_length/r1/sharpd.conf
@@ -1,7 +1,6 @@
hostname r1
!
log stdout notifications
-log monitor notifications
log commands
log file sharpd.log debugging
!
diff --git a/tests/topotests/srv6_locator_custom_bits_length/r1/zebra.conf b/tests/topotests/srv6_locator_custom_bits_length/r1/zebra.conf
index 30a520b798..96033b6573 100644
--- a/tests/topotests/srv6_locator_custom_bits_length/r1/zebra.conf
+++ b/tests/topotests/srv6_locator_custom_bits_length/r1/zebra.conf
@@ -4,7 +4,6 @@ hostname r1
! debug zebra rib detailed
!
log stdout notifications
-log monitor notifications
log commands
log file zebra.log debugging
!
diff --git a/tests/topotests/srv6_locator_usid/r1/sharpd.conf b/tests/topotests/srv6_locator_usid/r1/sharpd.conf
index d46085935c..371e6f694a 100644
--- a/tests/topotests/srv6_locator_usid/r1/sharpd.conf
+++ b/tests/topotests/srv6_locator_usid/r1/sharpd.conf
@@ -1,7 +1,6 @@
hostname r1
!
log stdout notifications
-log monitor notifications
log commands
log file sharpd.log debugging
!
diff --git a/tests/topotests/srv6_locator_usid/r1/zebra.conf b/tests/topotests/srv6_locator_usid/r1/zebra.conf
index 190e831ac1..1a02e28be2 100644
--- a/tests/topotests/srv6_locator_usid/r1/zebra.conf
+++ b/tests/topotests/srv6_locator_usid/r1/zebra.conf
@@ -4,7 +4,6 @@ hostname r1
! debug zebra rib detailed
!
log stdout notifications
-log monitor notifications
log commands
log file zebra.log debugging
!
diff --git a/tests/topotests/srv6_static_route/r1/staticd.conf b/tests/topotests/srv6_static_route/r1/staticd.conf
index a75c69f26b..3c65a68c7b 100644
--- a/tests/topotests/srv6_static_route/r1/staticd.conf
+++ b/tests/topotests/srv6_static_route/r1/staticd.conf
@@ -1,7 +1,6 @@
hostname r1
!
log stdout notifications
-log monitor notifications
log commands
log file staticd.log debugging
!
diff --git a/tests/topotests/srv6_static_route/r1/zebra.conf b/tests/topotests/srv6_static_route/r1/zebra.conf
index cc70418601..a596eeba88 100644
--- a/tests/topotests/srv6_static_route/r1/zebra.conf
+++ b/tests/topotests/srv6_static_route/r1/zebra.conf
@@ -4,7 +4,6 @@ hostname r1
! debug zebra rib detailed
!
log stdout notifications
-log monitor notifications
log commands
log file zebra.log debugging
!
diff --git a/tests/topotests/zebra_seg6_route/r1/zebra.conf b/tests/topotests/zebra_seg6_route/r1/zebra.conf
index e5e360ffa5..2d0c9e157a 100644
--- a/tests/topotests/zebra_seg6_route/r1/zebra.conf
+++ b/tests/topotests/zebra_seg6_route/r1/zebra.conf
@@ -1,7 +1,6 @@
log file zebra.log
!
log stdout notifications
-log monitor notifications
log commands
!
! debug zebra packet
diff --git a/tests/topotests/zebra_seg6local_route/r1/zebra.conf b/tests/topotests/zebra_seg6local_route/r1/zebra.conf
index dee7a9171a..a3b9335244 100644
--- a/tests/topotests/zebra_seg6local_route/r1/zebra.conf
+++ b/tests/topotests/zebra_seg6local_route/r1/zebra.conf
@@ -1,7 +1,6 @@
log file zebra.log
!
log stdout notifications
-log monitor notifications
log commands
!
! debug zebra packet
diff --git a/zebra/kernel_netlink.c b/zebra/kernel_netlink.c
index 8b59ecd87f..5c31362eba 100644
--- a/zebra/kernel_netlink.c
+++ b/zebra/kernel_netlink.c
@@ -1924,8 +1924,11 @@ void kernel_terminate(struct zebra_ns *zns, bool complete)
/* During zebra shutdown, we need to leave the dataplane socket
* around until all work is done.
*/
- if (complete)
+ if (complete) {
kernel_nlsock_fini(&zns->netlink_dplane_out);
+
+ XFREE(MTYPE_NL_BUF, nl_batch_tx_buf);
+ }
}
/*
diff --git a/zebra/zebra_mlag.c b/zebra/zebra_mlag.c
index 7715eab0a8..2eb4fb668c 100644
--- a/zebra/zebra_mlag.c
+++ b/zebra/zebra_mlag.c
@@ -627,6 +627,8 @@ void zebra_mlag_init(void)
void zebra_mlag_terminate(void)
{
+ stream_fifo_free(zrouter.mlag_info.mlag_fifo);
+ zrouter.mlag_info.mlag_fifo = NULL;
}
diff --git a/zebra/zebra_vrf.c b/zebra/zebra_vrf.c
index 25e6513989..2adae61f54 100644
--- a/zebra/zebra_vrf.c
+++ b/zebra/zebra_vrf.c
@@ -265,6 +265,12 @@ static int zebra_vrf_delete(struct vrf *vrf)
otable_fini(&zvrf->other_tables);
XFREE(MTYPE_ZEBRA_VRF, zvrf);
+
+ if (vrf->ns_ctxt) {
+ ns_delete(vrf->ns_ctxt);
+ vrf->ns_ctxt = NULL;
+ }
+
vrf->info = NULL;
return 0;