summaryrefslogtreecommitdiff
path: root/isisd/isis_adjacency.h
diff options
context:
space:
mode:
authorMark Stapp <mjs@cisco.com>2024-08-09 10:08:21 -0400
committerMergify <37929162+mergify[bot]@users.noreply.github.com>2024-08-12 19:02:07 +0000
commitc1ee987adaae9e51d574469b637f5e7dc7110302 (patch)
tree8ba87154070cec8f55e71a4f409c7316772f6bbf /isisd/isis_adjacency.h
parent3d5f11736a18dfed6e6b4b61babd7a5aee83c5b9 (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.h2
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));