session: free session after transport and app confirm
[vpp.git] / src / vnet / tls / tls.c
index 109280b..fdba08c 100644 (file)
@@ -367,14 +367,14 @@ tls_session_reset_callback (stream_session_t * s)
 }
 
 int
-tls_add_segment_callback (u32 client_index, const ssvm_private_t * fs)
+tls_add_segment_callback (u32 client_index, u64 segment_handle)
 {
   /* No-op for builtin */
   return 0;
 }
 
 int
-tls_del_segment_callback (u32 client_index, const ssvm_private_t * fs)
+tls_del_segment_callback (u32 client_index, u64 segment_handle)
 {
   return 0;
 }
@@ -390,7 +390,7 @@ tls_session_disconnect_callback (stream_session_t * tls_session)
   ctx = tls_ctx_get (tls_session->opaque);
   if (!tls_ctx_handshake_is_over (ctx))
     {
-      stream_session_disconnect (tls_session);
+      session_close (tls_session);
       return;
     }
   ctx->is_passive_close = 1;
@@ -479,7 +479,7 @@ tls_session_connected_callback (u32 tls_app_index, u32 ho_ctx_index,
 
   ctx_handle = tls_ctx_alloc (ho_ctx->tls_ctx_engine);
   ctx = tls_ctx_get (ctx_handle);
-  clib_memcpy (ctx, ho_ctx, sizeof (*ctx));
+  clib_memcpy_fast (ctx, ho_ctx, sizeof (*ctx));
   tls_ctx_half_open_reader_unlock ();
   tls_ctx_half_open_free (ho_ctx_index);
 
@@ -548,7 +548,7 @@ tls_connect (transport_endpoint_cfg_t * tep)
   app_worker_alloc_connects_segment_manager (app_wrk);
   ctx->tls_ctx_engine = engine_type;
 
-  clib_memcpy (&cargs->sep, sep, sizeof (session_endpoint_t));
+  clib_memcpy_fast (&cargs->sep, sep, sizeof (session_endpoint_t));
   cargs->sep.transport_proto = TRANSPORT_PROTO_TCP;
   cargs->app_index = tm->app_index;
   cargs->api_context = ctx_index;
@@ -568,7 +568,7 @@ tls_disconnect (u32 ctx_handle, u32 thread_index)
 
   ctx = tls_ctx_get (ctx_handle);
   tls_disconnect_transport (ctx);
-  stream_session_delete_notify (&ctx->connection);
+  session_transport_delete_notify (&ctx->connection);
   tls_ctx_free (ctx);
 }