X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fsession%2Fapplication_interface.h;h=6cc1af4d78b24c6bd86ab96630a3b0d866b801c2;hb=8e9e0eccb280619f10d287dad3f79541ade03adc;hp=234813e5814ed5fbddea433a39cc1e82f8f136f2;hpb=87b15cebdaca21f6725637abeceec0f19f4eec51;p=vpp.git diff --git a/src/vnet/session/application_interface.h b/src/vnet/session/application_interface.h index 234813e5814..6cc1af4d78b 100644 --- a/src/vnet/session/application_interface.h +++ b/src/vnet/session/application_interface.h @@ -39,9 +39,18 @@ typedef struct _stream_session_cb_vft /** Notify app that session is closing */ void (*session_disconnect_callback) (session_t * s); + /** Notify app that transport is closed */ + void (*session_transport_closed_callback) (session_t * s); + + /** Notify app that session or transport are about to be removed */ + void (*session_cleanup_callback) (session_t * s, session_cleanup_ntf_t ntf); + /** Notify app that session was reset */ void (*session_reset_callback) (session_t * s); + /** Notify app that session pool migration happened */ + void (*session_migrate_callback) (session_t * s, session_handle_t new_sh); + /** Direct RX callback for built-in application */ int (*builtin_app_rx_callback) (session_t * session); @@ -379,7 +388,6 @@ app_alloc_ctrl_evt_to_vpp (svm_msg_q_t * mq, app_session_evt_t * app_evt, svm_msg_q_lock_and_alloc_msg_w_ring (mq, SESSION_MQ_CTRL_EVT_RING, SVM_Q_WAIT, &app_evt->msg); - svm_msg_q_unlock (mq); app_evt->evt = svm_msg_q_msg_data (mq, &app_evt->msg); clib_memset (app_evt->evt, 0, sizeof (*app_evt->evt)); app_evt->evt->event_type = evt_type; @@ -388,7 +396,7 @@ app_alloc_ctrl_evt_to_vpp (svm_msg_q_t * mq, app_session_evt_t * app_evt, static inline void app_send_ctrl_evt_to_vpp (svm_msg_q_t * mq, app_session_evt_t * app_evt) { - svm_msg_q_add (mq, &app_evt->msg, SVM_Q_WAIT); + svm_msg_q_add_and_unlock (mq, &app_evt->msg); } /**