From d8e94ba8231138e86f31c745c82a0adf54531164 Mon Sep 17 00:00:00 2001 From: Ping Yu Date: Wed, 26 Dec 2018 05:42:38 -0500 Subject: [PATCH] Fix an issue in tls.c Curernt code will overwrite parent_app_api_context, and defer the setting after this value is used in callback. Change-Id: Ie16e432fd0f4214e6deff3aa3b58b3be824b0331 Signed-off-by: Ping Yu --- src/vnet/tls/tls.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/vnet/tls/tls.c b/src/vnet/tls/tls.c index fdba08c5915..34de539b295 100644 --- a/src/vnet/tls/tls.c +++ b/src/vnet/tls/tls.c @@ -262,7 +262,6 @@ tls_notify_app_connected (tls_ctx_t * ctx, u8 is_failed) goto failed; ctx->app_session_handle = session_handle (app_session); - ctx->c_s_index = app_session->session_index; app_session->session_state = SESSION_STATE_CONNECTING; if (cb_fn (ctx->parent_app_index, ctx->parent_app_api_context, app_session, 0 /* not failed */ )) @@ -272,6 +271,9 @@ tls_notify_app_connected (tls_ctx_t * ctx, u8 is_failed) return -1; } + /* parent_app_api_context should not be overwitten before used, + * so defer setting c_s_index */ + ctx->c_s_index = app_session->session_index; app_session->session_state = SESSION_STATE_READY; session_lookup_add_connection (&ctx->connection, session_handle (app_session)); -- 2.16.6