+/*
+ * Interface to transport protos
+ */
+
+int session_enqueue_stream_connection (transport_connection_t * tc,
+ vlib_buffer_t * b, u32 offset,
+ u8 queue_event, u8 is_in_order);
+int session_enqueue_dgram_connection (session_t * s,
+ session_dgram_hdr_t * hdr,
+ vlib_buffer_t * b, u8 proto,
+ u8 queue_event);
+int session_stream_connect_notify (transport_connection_t * tc,
+ session_error_t err);
+int session_dgram_connect_notify (transport_connection_t * tc,
+ u32 old_thread_index,
+ session_t ** new_session);
+int session_stream_accept_notify (transport_connection_t * tc);
+void session_transport_closing_notify (transport_connection_t * tc);
+void session_transport_delete_notify (transport_connection_t * tc);
+void session_transport_closed_notify (transport_connection_t * tc);
+void session_transport_reset_notify (transport_connection_t * tc);
+int session_stream_accept (transport_connection_t * tc, u32 listener_index,
+ u32 thread_index, u8 notify);
+int session_dgram_accept (transport_connection_t * tc, u32 listener_index,
+ u32 thread_index);
+/**
+ * Initialize session layer for given transport proto and ip version
+ *
+ * Allocates per session type (transport proto + ip version) data structures
+ * and adds arc from session queue node to session type output node.
+ *
+ * @param transport_proto transport proto to be registered
+ * @param vft virtual function table for transport
+ * @param is_ip4 flag that indicates if transports uses ipv4
+ * as underlying network layer
+ * @param output_node output node for transport
+ */