16 #ifndef SRC_VNET_SESSION_STREAM_SESSION_H_ 17 #define SRC_VNET_SESSION_STREAM_SESSION_H_ 51 typedef struct _stream_session_t
75 u32 svm_segment_index;
95 u32 listener_db_index;
157 #define foreach_session_endpoint_fields \ 158 foreach_transport_endpoint_cfg_fields \ 159 _(u8, transport_proto) \ 161 typedef struct _session_endpoint
163 #define _(type, name) type name; 168 typedef struct _session_endpoint_cfg
170 #define _(type, name) type name; 178 #define SESSION_IP46_ZERO \ 185 #define TRANSPORT_ENDPOINT_NULL \ 187 .sw_if_index = ENDPOINT_INVALID_INDEX, \ 188 .ip = SESSION_IP46_ZERO, \ 189 .fib_index = ENDPOINT_INVALID_INDEX, \ 193 #define SESSION_ENDPOINT_NULL \ 195 .sw_if_index = ENDPOINT_INVALID_INDEX, \ 196 .ip = SESSION_IP46_ZERO, \ 197 .fib_index = ENDPOINT_INVALID_INDEX, \ 200 .peer = TRANSPORT_ENDPOINT_NULL, \ 201 .transport_proto = 0, \ 203 #define SESSION_ENDPOINT_CFG_NULL \ 205 .sw_if_index = ENDPOINT_INVALID_INDEX, \ 206 .ip = SESSION_IP46_ZERO, \ 207 .fib_index = ENDPOINT_INVALID_INDEX, \ 210 .peer = TRANSPORT_ENDPOINT_NULL, \ 211 .transport_proto = 0, \ 212 .app_wrk_index = ENDPOINT_INVALID_INDEX, \ 213 .opaque = ENDPOINT_INVALID_INDEX, \ 217 #define session_endpoint_to_transport(_sep) ((transport_endpoint_t *)_sep) 218 #define session_endpoint_to_transport_cfg(_sep) \ 219 ((transport_endpoint_cfg_t *)_sep)
session_type_t listener_session_type
Has transport embedded when listener not purely local.
u8 pad[3]
log2 (size of the packing page block)
#define CLIB_CACHE_LINE_ALIGN_MARK(mark)
svm_fifo_t * server_tx_fifo
svm_fifo_t * rx_fifo
rx fifo
struct generic_session_ generic_session_t
struct _svm_fifo svm_fifo_t
volatile u8 session_state
session state
u32 transport_listener_index
Transport listener index.
struct local_session_ local_session_t
session_type_t session_type
Type.
struct _stream_session_t stream_session_t
struct _session_endpoint_cfg session_endpoint_cfg_t
struct _session_endpoint session_endpoint_t
svm_fifo_t * server_rx_fifo
fifo pointers.
u32 svm_segment_index
Segment index where fifos were allocated.
volatile u8 session_state
State.
u16 port
Port for connection.
u32 app_wrk_index
Server index.
u32 session_index
index in owning pool
u32 client_wrk_index
Client data.
#define foreach_session_endpoint_fields
static u8 session_endpoint_fib_proto(session_endpoint_t *sep)
session_type_t session_type
session type
u32 session_index
Session index.
svm_fifo_t * tx_fifo
tx fifo