diff options
| author | Mark Stapp <mjs@cisco.com> | 2024-08-09 10:08:21 -0400 | 
|---|---|---|
| committer | Mergify <37929162+mergify[bot]@users.noreply.github.com> | 2024-08-12 19:02:07 +0000 | 
| commit | c1ee987adaae9e51d574469b637f5e7dc7110302 (patch) | |
| tree | 8ba87154070cec8f55e71a4f409c7316772f6bbf /isisd/isis_adjacency.h | |
| parent | 3d5f11736a18dfed6e6b4b61babd7a5aee83c5b9 (diff) | |
isisd: fix memory handling in isis_adj_process_threeway()
The adj_process_threeway() api may call the adj_state_change()
api, which may delete the adj struct being examined. Change the
signature so that callers pass a ptr-to-ptr so that they will
see that deletion.
Signed-off-by: Mark Stapp <mjs@cisco.com>
(cherry picked from commit 3eb7d1641166872591554519607483f6d77657f5)
Diffstat (limited to 'isisd/isis_adjacency.h')
| -rw-r--r-- | isisd/isis_adjacency.h | 2 | 
1 files changed, 1 insertions, 1 deletions
diff --git a/isisd/isis_adjacency.h b/isisd/isis_adjacency.h index b5c7dd8d73..0ad36e4c5f 100644 --- a/isisd/isis_adjacency.h +++ b/isisd/isis_adjacency.h @@ -111,7 +111,7 @@ struct isis_adjacency *isis_adj_find(const struct isis_area *area, int level,  struct isis_adjacency *isis_new_adj(const uint8_t *id, const uint8_t *snpa,  				    int level, struct isis_circuit *circuit);  void isis_delete_adj(void *adj); -void isis_adj_process_threeway(struct isis_adjacency *adj, +void isis_adj_process_threeway(struct isis_adjacency **padj,  			       struct isis_threeway_adj *tw_adj,  			       enum isis_adj_usage adj_usage);  DECLARE_HOOK(isis_adj_state_change_hook, (struct isis_adjacency *adj), (adj));  | 
