diff options
| author | Donald Sharp <sharpd@nvidia.com> | 2023-11-15 14:32:13 -0500 | 
|---|---|---|
| committer | Donald Sharp <sharpd@nvidia.com> | 2023-11-21 12:41:18 -0500 | 
| commit | a3dfb086621e6c8561b9a940e49a78ab6f61ee02 (patch) | |
| tree | b1ee517ae23790c5b57676b2f9b6fd0dfa7093c8 /bfdd | |
| parent | 65b65f47c82a8f4345a6aeff61f93f0d18117a1b (diff) | |
bfdd: Free zclient memory on shutdown
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'bfdd')
| -rw-r--r-- | bfdd/bfd.h | 1 | ||||
| -rw-r--r-- | bfdd/bfdd.c | 2 | ||||
| -rw-r--r-- | bfdd/ptm_adapter.c | 5 | 
3 files changed, 8 insertions, 0 deletions
diff --git a/bfdd/bfd.h b/bfdd/bfd.h index 6c5a1e9216..d5a9f92cf7 100644 --- a/bfdd/bfd.h +++ b/bfdd/bfd.h @@ -782,6 +782,7 @@ void bfdd_cli_init(void);   */  void bfdd_zclient_init(struct zebra_privs_t *bfdd_priv);  void bfdd_zclient_stop(void); +void bfdd_zclient_terminate(void);  void bfdd_zclient_unregister(vrf_id_t vrf_id);  void bfdd_zclient_register(vrf_id_t vrf_id);  void bfdd_sessions_enable_vrf(struct vrf *vrf); diff --git a/bfdd/bfdd.c b/bfdd/bfdd.c index 95066b97ce..71055c32ed 100644 --- a/bfdd/bfdd.c +++ b/bfdd/bfdd.c @@ -75,6 +75,8 @@ static void sigterm_handler(void)  	bfd_vrf_terminate(); +	bfdd_zclient_terminate(); +  	/* Terminate and free() FRR related memory. */  	frr_fini(); diff --git a/bfdd/ptm_adapter.c b/bfdd/ptm_adapter.c index e6c2fb71f0..b5ab2ef1d0 100644 --- a/bfdd/ptm_adapter.c +++ b/bfdd/ptm_adapter.c @@ -859,6 +859,11 @@ void bfdd_zclient_stop(void)  	pc_free_all();  } +void bfdd_zclient_terminate(void) +{ +	zclient_free(zclient); +} +  /*   * Client handling.  | 
