Skip to content

Commit

Permalink
Merge pull request #16578 from donaldsharp/more_memory_leaks_on_shutdown
Browse files Browse the repository at this point in the history
More memory leaks on shutdown
  • Loading branch information
ton31337 authored Aug 14, 2024
2 parents 28df446 + 68fff49 commit 93032f1
Show file tree
Hide file tree
Showing 6 changed files with 12 additions and 4 deletions.
5 changes: 5 additions & 0 deletions babeld/babel_interface.c
Original file line number Diff line number Diff line change
Expand Up @@ -1171,6 +1171,11 @@ DEFUN (show_babel_parameters,
return CMD_SUCCESS;
}

void babel_if_terminate(void)
{
vector_free(babel_enable_if);
}

void
babel_if_init(void)
{
Expand Down
1 change: 1 addition & 0 deletions babeld/babel_interface.h
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ struct buffered_update {

/* init function */
void babel_if_init(void);
void babel_if_terminate(void);

/* Callback functions for zebra client */
int babel_interface_up (int, struct zclient *, zebra_size_t, vrf_id_t);
Expand Down
4 changes: 2 additions & 2 deletions babeld/babel_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -305,9 +305,9 @@ babel_exit_properly(void)

/* Uninstall and flush all routes. */
debugf(BABEL_DEBUG_COMMON, "Uninstall routes.");
flush_all_routes();
babel_interface_close_all();
babel_clean_routing_process();
babel_zebra_close_connexion();
babel_if_terminate();
babel_save_state_file();
debugf(BABEL_DEBUG_COMMON, "Remove pid file.");
debugf(BABEL_DEBUG_COMMON, "Done.");
Expand Down
3 changes: 1 addition & 2 deletions babeld/babeld.c
Original file line number Diff line number Diff line change
Expand Up @@ -299,8 +299,7 @@ babel_initial_noise(void)
}

/* Delete all the added babel routes, make babeld only speak to zebra. */
static void
babel_clean_routing_process(void)
void babel_clean_routing_process(void)
{
flush_all_routes();
babel_interface_close_all();
Expand Down
1 change: 1 addition & 0 deletions babeld/babeld.h
Original file line number Diff line number Diff line change
Expand Up @@ -98,5 +98,6 @@ extern int redistribute_filter(const unsigned char *prefix, unsigned short plen,
extern int resize_receive_buffer(int size);
extern void schedule_neighbours_check(int msecs, int override);
extern struct babel *babel_lookup(void);
extern void babel_clean_routing_process(void);

#endif /* BABEL_BABELD_H */
2 changes: 2 additions & 0 deletions pbrd/pbr_vrf.c
Original file line number Diff line number Diff line change
Expand Up @@ -123,4 +123,6 @@ void pbr_vrf_terminate(void)
FOR_ALL_INTERFACES (vrf, ifp)
pbr_if_del(ifp);
}

vrf_terminate();
}

0 comments on commit 93032f1

Please sign in to comment.