tls: handle engine listen failure

Type:fix

Change-Id: I528b7cfcb7a6aada94ee3649378e6fbe84d2e4e6
Signed-off-by: Florin Coras <fcoras@cisco.com>
This commit is contained in:
Florin Coras
2019-07-23 22:38:16 -07:00
committed by Damjan Marion
parent 994ef1c164
commit ae3eaacaf1

View File

@ -602,7 +602,18 @@ tls_start_listen (u32 app_listener_index, transport_endpoint_t * tep)
lctx->tcp_is_ip4 = sep->is_ip4;
lctx->tls_ctx_engine = engine_type;
tls_vfts[engine_type].ctx_start_listen (lctx);
if (tls_vfts[engine_type].ctx_start_listen (lctx))
{
vnet_unlisten_args_t a = {
.handle = lctx->tls_session_handle,
.app_index = tls_main.app_index,
.wrk_map_index = 0
};
if ((vnet_unlisten (&a)))
clib_warning ("unlisten returned");
tls_listener_ctx_free (lctx);
lctx_index = SESSION_INVALID_INDEX;
}
TLS_DBG (1, "Started listening %d, engine type %d", lctx_index,
engine_type);