From f0c4096e1bfa3fac4011831978a87975ae6aa3c6 Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Mon, 28 Oct 2019 08:46:37 -0700 Subject: session: allow transport cleanup only if not deleted Type: fix Change-Id: I51282182952a66be698226bace39626df4d67b9f Signed-off-by: Florin Coras (cherry picked from commit 5afea129ed0c85f5313791d1d55fed6cdcc079c7) --- src/vnet/session/session.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/vnet/session/session.c b/src/vnet/session/session.c index 32d7914a607..97c9789f76f 100644 --- a/src/vnet/session/session.c +++ b/src/vnet/session/session.c @@ -1281,8 +1281,9 @@ session_transport_cleanup (session_t * s) { /* Delete from main lookup table before we axe the the transport */ session_lookup_del_session (s); - transport_cleanup (session_get_transport_proto (s), s->connection_index, - s->thread_index); + if (s->session_state != SESSION_STATE_TRANSPORT_DELETED) + transport_cleanup (session_get_transport_proto (s), s->connection_index, + s->thread_index); /* Since we called cleanup, no delete notification will come. So, make * sure the session is properly freed. */ session_free_w_fifos (s); -- cgit 1.2.3-korg