case FIFO_EVENT_BUILTIN_RX:
evt->fifo = data;
break;
+ case FIFO_EVENT_BUILTIN_TX:
case FIFO_EVENT_DISCONNECT:
evt->session_handle = session_handle ((stream_session_t *) data);
break;
}
int
-session_send_io_evt_to_thread_custom (svm_fifo_t * f, u32 thread_index,
+session_send_io_evt_to_thread_custom (void *data, u32 thread_index,
session_evt_type_t evt_type)
{
- return session_send_evt_to_thread (f, 0, thread_index, evt_type);
+ return session_send_evt_to_thread (data, 0, thread_index, evt_type);
}
int
stream_session_t *s;
s = session_get (tc->s_index, tc->thread_index);
+ if (s->session_state >= SESSION_STATE_TRANSPORT_CLOSING)
+ return;
s->session_state = SESSION_STATE_TRANSPORT_CLOSING;
app_wrk = app_worker_get_if_valid (s->app_wrk_index);
if (!app_wrk)