FD.io VPP  v21.01.1
Vector Packet Processing
node.c File Reference
+ Include dependency graph for node.c:

Go to the source code of this file.

Data Structures

struct  hdlc_input_trace_t
 
struct  hdlc_input_runtime_t
 

Macros

#define foreach_hdlc_input_next
 
#define hdlc_error(n, s)   s,
 

Enumerations

enum  hdlc_input_next_t { HDLC_INPUT_N_NEXT }
 

Functions

static u8format_hdlc_input_trace (u8 *s, va_list *va)
 
static uword hdlc_input (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
 
static clib_error_thdlc_input_runtime_init (vlib_main_t *vm)
 
static clib_error_thdlc_input_init (vlib_main_t *vm)
 
 VLIB_WORKER_INIT_FUNCTION (hdlc_input_runtime_init)
 
void hdlc_register_input_protocol (vlib_main_t *vm, hdlc_protocol_t protocol, u32 node_index)
 

Variables

static char * hdlc_error_strings []
 
vlib_node_registration_t hdlc_input_node
 (constructor) VLIB_REGISTER_NODE (hdlc_input_node) More...
 

Macro Definition Documentation

◆ foreach_hdlc_input_next

#define foreach_hdlc_input_next
Value:
_ (PUNT, "error-punt") \
_ (DROP, "error-drop")
DROP
Definition: error.def:41

Definition at line 45 of file node.c.

◆ hdlc_error

#define hdlc_error (   n,
 
)    s,

Enumeration Type Documentation

◆ hdlc_input_next_t

Enumerator
HDLC_INPUT_N_NEXT 

Definition at line 49 of file node.c.

Function Documentation

◆ format_hdlc_input_trace()

static u8* format_hdlc_input_trace ( u8 s,
va_list *  va 
)
static

Definition at line 63 of file node.c.

◆ hdlc_input()

static uword hdlc_input ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t from_frame 
)
static

Definition at line 84 of file node.c.

+ Here is the call graph for this function:

◆ hdlc_input_init()

static clib_error_t* hdlc_input_init ( vlib_main_t vm)
static

Definition at line 328 of file node.c.

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

◆ hdlc_input_runtime_init()

static clib_error_t* hdlc_input_runtime_init ( vlib_main_t vm)
static

Definition at line 308 of file node.c.

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

◆ hdlc_register_input_protocol()

void hdlc_register_input_protocol ( vlib_main_t vm,
hdlc_protocol_t  protocol,
u32  node_index 
)

Definition at line 347 of file node.c.

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

◆ VLIB_WORKER_INIT_FUNCTION()

VLIB_WORKER_INIT_FUNCTION ( hdlc_input_runtime_init  )

Variable Documentation

◆ hdlc_error_strings

char* hdlc_error_strings[]
static
Initial value:
= {
#define hdlc_error(n,s)
hdlc_error (NONE, "no error")
hdlc_error (UNKNOWN_PROTOCOL, "unknown hdlc protocol")
hdlc_error (UNKNOWN_ADDRESS_CONTROL, "address, control != 0x0f00")
}
vl_api_ip_proto_t protocol
Definition: lb_types.api:72
unknown
Definition: map.api:399
manual_print typedef address
Definition: ip_types.api:96
#define hdlc_error(n, s)

Definition at line 276 of file node.c.

◆ hdlc_input_node

vlib_node_registration_t hdlc_input_node
Initial value:
= {
.function = hdlc_input,
.name = "hdlc-input",
.vector_size = sizeof (u32),
.runtime_data_bytes = sizeof (hdlc_input_runtime_t),
.n_errors = HDLC_N_ERROR,
.error_strings = hdlc_error_strings,
.n_next_nodes = HDLC_INPUT_N_NEXT,
.next_nodes = {
#define _(s,n)
},
.format_trace = format_hdlc_input_trace,
.unformat_buffer = unformat_hdlc_header,
}
format_function_t format_hdlc_header_with_length
Definition: hdlc.h:98
static u8 * format_hdlc_input_trace(u8 *s, va_list *va)
Definition: node.c:63
static char * hdlc_error_strings[]
Definition: node.c:276
#define foreach_hdlc_input_next
Definition: node.c:45
unsigned int u32
Definition: types.h:88
unformat_function_t unformat_hdlc_header
Definition: hdlc.h:106
static uword hdlc_input(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
Definition: node.c:84

(constructor) VLIB_REGISTER_NODE (hdlc_input_node)

Definition at line 283 of file node.c.