diff options
author | Florin Coras <fcoras@cisco.com> | 2024-03-26 19:47:27 -0700 |
---|---|---|
committer | Florin Coras <fcoras@cisco.com> | 2024-03-26 19:48:33 -0700 |
commit | 7c2a3357f32ae02bcc20cdad6d87beda39f71d31 (patch) | |
tree | ced2b0fcf2d5f69c962033508c0b8ae44e42c38c /src | |
parent | e8ea6be8dfb626b5bb4ff3355ce8037724ce1d83 (diff) |
tls: init session for accepted ctx
Make sure session is marked as invalid.
Type: improvement
Change-Id: I1c861645de95ef15a24acd4fe6dd5364a55b4fb8
Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/vnet/tls/tls.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/vnet/tls/tls.c b/src/vnet/tls/tls.c index 996c20f2829..6129b09207b 100644 --- a/src/vnet/tls/tls.c +++ b/src/vnet/tls/tls.c @@ -486,24 +486,24 @@ tls_session_disconnect_callback (session_t * tls_session) } int -tls_session_accept_callback (session_t * tls_session) +tls_session_accept_callback (session_t *ts) { session_t *tls_listener; tls_ctx_t *lctx, *ctx; u32 ctx_handle; - tls_listener = - listen_session_get_from_handle (tls_session->listener_handle); + tls_listener = listen_session_get_from_handle (ts->listener_handle); lctx = tls_listener_ctx_get (tls_listener->opaque); ctx_handle = tls_ctx_alloc (lctx->tls_ctx_engine); ctx = tls_ctx_get (ctx_handle); clib_memcpy (ctx, lctx, sizeof (*lctx)); - ctx->c_thread_index = vlib_get_thread_index (); + ctx->c_s_index = SESSION_INVALID_INDEX; + ctx->c_thread_index = ts->thread_index; ctx->tls_ctx_handle = ctx_handle; - tls_session->session_state = SESSION_STATE_READY; - tls_session->opaque = ctx_handle; - ctx->tls_session_handle = session_handle (tls_session); + ts->session_state = SESSION_STATE_READY; + ts->opaque = ctx_handle; + ctx->tls_session_handle = session_handle (ts); ctx->listener_ctx_index = tls_listener->opaque; ctx->c_flags |= TRANSPORT_CONNECTION_F_NO_LOOKUP; ctx->ckpair_index = lctx->ckpair_index; |