tls: allow disconnects from main thread 74/22674/3
authorFlorin Coras <fcoras@cisco.com>
Fri, 11 Oct 2019 15:00:43 +0000 (08:00 -0700)
committerDave Barach <openvpp@barachs.net>
Sat, 12 Oct 2019 17:12:49 +0000 (17:12 +0000)
Type: fix

Use api with explicit thread index to retrieve tls contex on close.

Change-Id: Ibdc4338747300b7fc8f91ef3e10bcd48ce7ae366
Signed-off-by: Florin Coras <fcoras@cisco.com>
src/vnet/tls/tls.c

index 3048190..28c1f58 100644 (file)
@@ -386,7 +386,10 @@ tls_session_disconnect_callback (session_t * tls_session)
   TLS_DBG (1, "TCP disconnecting handle %x session %u", tls_session->opaque,
           tls_session->session_index);
 
-  ctx = tls_ctx_get (tls_session->opaque);
+  ASSERT (tls_session->thread_index == vlib_get_thread_index ()
+         || vlib_thread_is_main_w_barrier ());
+
+  ctx = tls_ctx_get_w_thread (tls_session->opaque, tls_session->thread_index);
   ctx->is_passive_close = 1;
   tls_ctx_transport_close (ctx);
 }