Handle buffer alloc failure in vlib_buffer_add_data
[vpp.git] / src / vnet / session / transport_interface.h
index 3bfed41..e8a6dbc 100644 (file)
@@ -61,6 +61,7 @@ typedef struct _transport_proto_vft
   u32 (*send_space) (transport_connection_t * tc);
   u32 (*tx_fifo_offset) (transport_connection_t * tc);
   void (*update_time) (f64 time_now, u8 thread_index);
+  void (*flush_data) (transport_connection_t *tconn);
 
   /*
    * Connection retrieval
@@ -102,6 +103,16 @@ transport_tx_fn_type_t transport_protocol_tx_fn_type (transport_proto_t tp);
 void transport_update_time (f64 time_now, u8 thread_index);
 void transport_enable_disable (vlib_main_t * vm, u8 is_en);
 
+always_inline u32
+transport_elog_track_index (transport_connection_t * tc)
+{
+#if TRANSPORT_DEBUG
+  return tc->elog_track.track_index_plus_one - 1;
+#else
+  return ~0;
+#endif
+}
+
 void transport_connection_tx_pacer_reset (transport_connection_t * tc,
                                          u32 rate_bytes_per_sec,
                                          u32 initial_bucket, u64 time_now);