X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fsession%2Fapplication.c;h=757e12e1b58b0867306ca35332576d8a95d4f653;hb=460dce6e2d017cc7b2151fd0fa61d464570489d7;hp=99f0dff7fab6a6d7e1e44ded371af9c2e7ab493a;hpb=e939bf1b508e1fae6929dd8cf0f3effdc2c12549;p=vpp.git diff --git a/src/vnet/session/application.c b/src/vnet/session/application.c index 99f0dff7fab..757e12e1b58 100644 --- a/src/vnet/session/application.c +++ b/src/vnet/session/application.c @@ -841,7 +841,8 @@ app_send_io_evt_rx (application_t * app, stream_session_t * s, u8 lock) svm_msg_q_msg_t msg; svm_msg_q_t *mq; - if (PREDICT_FALSE (s->session_state != SESSION_STATE_READY)) + if (PREDICT_FALSE (s->session_state != SESSION_STATE_READY + && s->session_state != SESSION_STATE_LISTENING)) { /* Session is closed so app will never clean up. Flush rx fifo */ if (s->session_state == SESSION_STATE_CLOSED) @@ -917,8 +918,9 @@ app_send_io_evt_tx (application_t * app, stream_session_t * s, u8 lock) typedef int (app_send_evt_handler_fn) (application_t *app, stream_session_t *s, u8 lock); -static app_send_evt_handler_fn * const app_send_evt_handler_fns[2] = { +static app_send_evt_handler_fn * const app_send_evt_handler_fns[3] = { app_send_io_evt_rx, + 0, app_send_io_evt_tx, }; /* *INDENT-ON* */