X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fsession%2Fsession.c;h=d27d1bbab237192628233136cd201608b062f44f;hb=61ae056bd;hp=027070436fd5fa3e833fa8f0830f23bab1e28d8a;hpb=da302e4fce1003a2fdd2ace7e1ae09987399092c;p=vpp.git diff --git a/src/vnet/session/session.c b/src/vnet/session/session.c index 027070436fd..d27d1bbab23 100644 --- a/src/vnet/session/session.c +++ b/src/vnet/session/session.c @@ -812,8 +812,11 @@ session_stream_connect_notify (transport_connection_t * tc, if (app_worker_connect_notify (app_wrk, s, SESSION_E_NONE, opaque)) { + session_lookup_del_connection (tc); + /* Avoid notifying app about rejected session cleanup */ s = session_get (new_si, new_ti); - session_free_w_fifos (s); + segment_manager_dealloc_fifos (s->rx_fifo, s->tx_fifo); + session_free (s); return -1; } @@ -1676,7 +1679,7 @@ session_manager_main_enable (vlib_main_t * vm) wrk->new_head = clib_llist_make_head (wrk->event_elts, evt_list); wrk->old_head = clib_llist_make_head (wrk->event_elts, evt_list); wrk->vm = vlib_mains[i]; - wrk->last_vlib_time = vlib_time_now (vlib_mains[i]); + wrk->last_vlib_time = vlib_time_now (vm); wrk->last_vlib_us_time = wrk->last_vlib_time * CLIB_US_TIME_FREQ; vec_validate (wrk->session_to_enqueue, smm->last_transport_proto_type); @@ -1901,6 +1904,8 @@ session_config_fn (vlib_main_t * vm, unformat_input_t * input) ; else if (unformat (input, "enable")) smm->session_enable_asap = 1; + else if (unformat (input, "use-app-socket-api")) + appns_sapi_enable (); else return clib_error_return (0, "unknown input `%U'", format_unformat_error, input);