FD.io VPP  v21.10.1-2-g0a485f517
Vector Packet Processing
dequeue.c File Reference
+ Include dependency graph for dequeue.c:

Go to the source code of this file.

Data Structures

struct  snort_deq_trace_t
 

Macros

#define foreach_snort_deq_error
 

Enumerations

enum  snort_deq_error_t { SNORT_DEQ_N_ERROR }
 

Functions

static u8format_snort_deq_trace (u8 *s, va_list *args)
 
static_always_inline uword snort_deq_instance (vlib_main_t *vm, u32 instance_index, snort_qpair_t *qp, u32 *buffer_indices, u16 *nexts, u32 max_recv)
 
static_always_inline u32 snort_process_all_buffer_indices (snort_qpair_t *qp, u32 *b, u16 *nexts, u32 max_recv, u8 drop_on_disconnect)
 
static_always_inline uword snort_deq_instance_all_interrupt (vlib_main_t *vm, u32 instance_index, snort_qpair_t *qp, u32 *buffer_indices, u16 *nexts, u32 max_recv, u8 drop_on_disconnect)
 
static u32 snort_deq_node_interrupt (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
static_always_inline uword snort_deq_instance_poll (vlib_main_t *vm, snort_qpair_t *qp, u32 *buffer_indices, u16 *nexts, u32 max_recv)
 
static_always_inline uword snort_deq_instance_all_poll (vlib_main_t *vm, snort_qpair_t *qp, u32 *buffer_indices, u16 *nexts, u32 max_recv, u8 drop_on_disconnect)
 
static u32 snort_deq_node_polling (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
 if (sm->input_mode==VLIB_NODE_STATE_POLLING) return snort_deq_node_polling(vm
 
return snort_deq_node_interrupt (vm, node, frame)
 

Variables

static char * snort_deq_error_strings []
 
vlib_main_tvm
 
vlib_main_t vlib_node_runtime_tnode
 
vlib_main_t vlib_node_runtime_t vlib_frame_tframe
 
vlib_node_registration_t snort_deq_node
 (constructor) VLIB_REGISTER_NODE (snort_deq_node) More...
 

Macro Definition Documentation

◆ foreach_snort_deq_error

#define foreach_snort_deq_error
Value:
_ (BAD_DESC, "bad descriptor") \
_ (BAD_DESC_INDEX, "bad descriptor index")

Definition at line 28 of file dequeue.c.

Enumeration Type Documentation

◆ snort_deq_error_t

Enumerator
SNORT_DEQ_N_ERROR 

Definition at line 32 of file dequeue.c.

Function Documentation

◆ format_snort_deq_trace()

static u8* format_snort_deq_trace ( u8 s,
va_list *  args 
)
static

Definition at line 16 of file dequeue.c.

◆ if()

if ( sm->  input_mode = = VLIB_NODE_STATE_POLLING)

◆ snort_deq_instance()

static_always_inline uword snort_deq_instance ( vlib_main_t vm,
u32  instance_index,
snort_qpair_t qp,
u32 buffer_indices,
u16 nexts,
u32  max_recv 
)

Definition at line 47 of file dequeue.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ snort_deq_instance_all_interrupt()

static_always_inline uword snort_deq_instance_all_interrupt ( vlib_main_t vm,
u32  instance_index,
snort_qpair_t qp,
u32 buffer_indices,
u16 nexts,
u32  max_recv,
u8  drop_on_disconnect 
)

Definition at line 148 of file dequeue.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ snort_deq_instance_all_poll()

static_always_inline uword snort_deq_instance_all_poll ( vlib_main_t vm,
snort_qpair_t qp,
u32 buffer_indices,
u16 nexts,
u32  max_recv,
u8  drop_on_disconnect 
)

Definition at line 283 of file dequeue.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ snort_deq_instance_poll()

static_always_inline uword snort_deq_instance_poll ( vlib_main_t vm,
snort_qpair_t qp,
u32 buffer_indices,
u16 nexts,
u32  max_recv 
)

Definition at line 220 of file dequeue.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ snort_deq_node_interrupt() [1/2]

static u32 snort_deq_node_interrupt ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)
static

Definition at line 177 of file dequeue.c.

+ Here is the call graph for this function:

◆ snort_deq_node_interrupt() [2/2]

return snort_deq_node_interrupt ( vm  ,
node  ,
frame   
)

◆ snort_deq_node_polling()

static u32 snort_deq_node_polling ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)
static

Definition at line 300 of file dequeue.c.

+ Here is the call graph for this function:

◆ snort_process_all_buffer_indices()

static_always_inline u32 snort_process_all_buffer_indices ( snort_qpair_t qp,
u32 b,
u16 nexts,
u32  max_recv,
u8  drop_on_disconnect 
)

Definition at line 117 of file dequeue.c.

+ Here is the caller graph for this function:

Variable Documentation

◆ frame

frame
Initial value:

Definition at line 347 of file dequeue.c.

◆ node

node

Definition at line 346 of file dequeue.c.

◆ snort_deq_error_strings

char* snort_deq_error_strings[]
static
Initial value:
= {
#define _(sym, string)
}

Definition at line 40 of file dequeue.c.

◆ snort_deq_node

vlib_node_registration_t snort_deq_node
Initial value:
= {
.name = "snort-deq",
.vector_size = sizeof (u32),
.format_trace = format_snort_deq_trace,
.state = VLIB_NODE_STATE_DISABLED,
.sibling_of = "snort-enq",
.error_strings = snort_deq_error_strings,
.n_next_nodes = 0,
}

(constructor) VLIB_REGISTER_NODE (snort_deq_node)

Definition at line 354 of file dequeue.c.

◆ vm

Definition at line 346 of file dequeue.c.

VLIB_NODE_TYPE_INPUT
@ VLIB_NODE_TYPE_INPUT
Definition: node.h:76
state
vl_api_dhcp_client_state_t state
Definition: dhcp.api:201
snort_main_t
Definition: snort.h:70
foreach_snort_deq_error
#define foreach_snort_deq_error
Definition: dequeue.c:28
ARRAY_LEN
#define ARRAY_LEN(x)
Definition: clib.h:70
u32
unsigned int u32
Definition: types.h:88
snort_deq_error_strings
static char * snort_deq_error_strings[]
Definition: dequeue.c:40
format_snort_deq_trace
static u8 * format_snort_deq_trace(u8 *s, va_list *args)
Definition: dequeue.c:16
snort_main
snort_main_t snort_main
Definition: main.c:12
type
vl_api_fib_path_type_t type
Definition: fib_types.api:123