-int
-session_listen_app (stream_session_t * s, session_endpoint_t * sep)
-{
- session_endpoint_extended_t esep;
- clib_memcpy (&esep, sep, sizeof (*sep));
- esep.app_index = s->app_index;
-
- return tp_vfts[sep->transport_proto].bind (s->session_index,
- (transport_endpoint_t *) & esep);
-}
-
-typedef int (*session_listen_service_fn) (stream_session_t *,
- session_endpoint_t *);
-
-/* *INDENT-OFF* */
-static session_listen_service_fn
-session_listen_srv_fns[TRANSPORT_N_SERVICES] = {
- session_listen_vc,
- session_listen_cl,
- session_listen_app,
-};
-/* *INDENT-ON* */
-
-/**
- * Ask transport to listen on local transport endpoint.
- *
- * @param s Session for which listen will be called. Note that unlike
- * established sessions, listen sessions are not associated to a
- * thread.
- * @param tep Local endpoint to be listened on.
- */
-int
-stream_session_listen (stream_session_t * s, session_endpoint_t * sep)
-{
- transport_service_type_t tst = tp_vfts[sep->transport_proto].service_type;
- return session_listen_srv_fns[tst] (s, sep);
-}
-