From 6138b8d629dbc1cb47eb9ee8a69c2b22589b0f77 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Thu, 6 Jul 2017 14:14:06 +0200 Subject: [PATCH] farp: Only remove one tracked entry Multiple CHILD_SAs sharing the same traffic selectors (e.g. during make-before-break reauthentication) also have the same reqid assigned. If all matching entries are removed we could end up without entry even though an SA exists that still uses these traffic selectors. Fixes #2373. --- src/libcharon/plugins/farp/farp_listener.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libcharon/plugins/farp/farp_listener.c b/src/libcharon/plugins/farp/farp_listener.c index e19fc59721..28ced546ea 100644 --- a/src/libcharon/plugins/farp/farp_listener.c +++ b/src/libcharon/plugins/farp/farp_listener.c @@ -101,6 +101,7 @@ METHOD(listener_t, child_updown, bool, entry->remote->destroy_offset(entry->remote, offsetof(traffic_selector_t, destroy)); free(entry); + break; } } enumerator->destroy(enumerator); -- 2.47.2