FD.io VPP  v21.01.1
Vector Packet Processing
udp.h File Reference
+ Include dependency graph for udp.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  udp_connection_t
 
struct  udp_dst_port_info_t
 
struct  udp_main_t
 

Macros

#define udp_error(n, s)   UDP_ERROR_##n,
 
#define foreach_udp_connection_flag
 cloned to another thread More...
 

Typedefs

typedef enum udp_conn_flags_ udp_conn_flags_t
 

Enumerations

enum  udp_error_t { UDP_N_ERROR }
 
enum  udp_conn_flags_bits { UDP_CONN_N_FLAGS }
 
enum  udp_conn_flags_ { foreach_udp_connection_flag }
 
enum  udp_af_t { UDP_IP6 = 0, UDP_IP4, N_UDP_AF }
 

Functions

void udp_add_dst_port (udp_main_t *um, udp_dst_port_t dst_port, char *dst_port_name, u8 is_ip4)
 
static udp_connection_tudp_connection_get (u32 conn_index, u32 thread_index)
 
static udp_connection_tudp_listener_get (u32 conn_index)
 
static udp_main_tvnet_get_udp_main ()
 
static udp_connection_tudp_connection_from_transport (transport_connection_t *tc)
 
static u32 udp_connection_index (udp_connection_t *uc)
 
void udp_connection_free (udp_connection_t *uc)
 
udp_connection_tudp_connection_alloc (u32 thread_index)
 
static void udp_pool_add_peeker (u32 thread_index)
 Acquires a lock that blocks a connection pool from expanding. More...
 
static void udp_pool_remove_peeker (u32 thread_index)
 
static udp_connection_tudp_connection_clone_safe (u32 connection_index, u32 thread_index)
 
static udp_dst_port_info_tudp_get_dst_port_info (udp_main_t *um, udp_dst_port_t dst_port, u8 is_ip4)
 
void udp_connection_share_port (u16 lcl_port, u8 is_ip4)
 
void udp_punt_unknown (vlib_main_t *vm, u8 is_ip4, u8 is_add)
 

Variables

udp_main_t udp_main
 
vlib_node_registration_t udp4_input_node
 (constructor) VLIB_REGISTER_NODE (udp4_input_node) More...
 
vlib_node_registration_t udp6_input_node
 (constructor) VLIB_REGISTER_NODE (udp6_input_node) More...
 
vlib_node_registration_t udp4_local_node
 (constructor) VLIB_REGISTER_NODE (udp4_local_node) More...
 
vlib_node_registration_t udp6_local_node
 (constructor) VLIB_REGISTER_NODE (udp6_local_node) More...
 
format_function_t format_udp_header
 
format_function_t format_udp_rx_trace
 
format_function_t format_udp_connection
 
unformat_function_t unformat_udp_header
 
unformat_function_t unformat_udp_port
 

Macro Definition Documentation

◆ foreach_udp_connection_flag

#define foreach_udp_connection_flag
Value:
_(CONNECTED, "CONNECTED") /**< connected mode */ \
_(OWNS_PORT, "OWNS_PORT") /**< port belong to conn (UDPC) */ \
_(CLOSING, "CLOSING") /**< conn closed with data */ \
_(LISTEN, "LISTEN") /**< conn is listening */ \
_(MIGRATED, "MIGRATED")

cloned to another thread

Definition at line 36 of file udp.h.

◆ udp_error

#define udp_error (   n,
 
)    UDP_ERROR_##n,

Definition at line 30 of file udp.h.

Typedef Documentation

◆ udp_conn_flags_t

Enumeration Type Documentation

◆ udp_af_t

enum udp_af_t
Enumerator
UDP_IP6 
UDP_IP4 
N_UDP_AF 

Definition at line 90 of file udp.h.

◆ udp_conn_flags_

Enumerator
foreach_udp_connection_flag 

Definition at line 52 of file udp.h.

◆ udp_conn_flags_bits

Enumerator
UDP_CONN_N_FLAGS 

Definition at line 44 of file udp.h.

◆ udp_error_t

Enumerator
UDP_N_ERROR 

Definition at line 28 of file udp.h.

Function Documentation

◆ udp_add_dst_port()

void udp_add_dst_port ( udp_main_t um,
udp_dst_port_t  dst_port,
char *  dst_port_name,
u8  is_ip4 
)

Definition at line 448 of file udp_local.c.

+ Here is the caller graph for this function:

◆ udp_connection_alloc()

udp_connection_t* udp_connection_alloc ( u32  thread_index)

Definition at line 93 of file udp.c.

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

◆ udp_connection_clone_safe()

static udp_connection_t* udp_connection_clone_safe ( u32  connection_index,
u32  thread_index 
)
inlinestatic

Definition at line 203 of file udp.h.

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

◆ udp_connection_free()

void udp_connection_free ( udp_connection_t uc)

Definition at line 124 of file udp.c.

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

◆ udp_connection_from_transport()

static udp_connection_t* udp_connection_from_transport ( transport_connection_t tc)
inlinestatic

Definition at line 157 of file udp.h.

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

◆ udp_connection_get()

static udp_connection_t* udp_connection_get ( u32  conn_index,
u32  thread_index 
)
inlinestatic

Definition at line 137 of file udp.h.

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

◆ udp_connection_index()

static u32 udp_connection_index ( udp_connection_t uc)
inlinestatic

Definition at line 163 of file udp.h.

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

◆ udp_connection_share_port()

void udp_connection_share_port ( u16  lcl_port,
u8  is_ip4 
)

Definition at line 81 of file udp.c.

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

◆ udp_get_dst_port_info()

static udp_dst_port_info_t* udp_get_dst_port_info ( udp_main_t um,
udp_dst_port_t  dst_port,
u8  is_ip4 
)
inlinestatic

Definition at line 226 of file udp.h.

+ Here is the caller graph for this function:

◆ udp_listener_get()

static udp_connection_t* udp_listener_get ( u32  conn_index)
inlinestatic

Definition at line 145 of file udp.h.

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

◆ udp_pool_add_peeker()

static void udp_pool_add_peeker ( u32  thread_index)
inlinestatic

Acquires a lock that blocks a connection pool from expanding.

Definition at line 175 of file udp.h.

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

◆ udp_pool_remove_peeker()

static void udp_pool_remove_peeker ( u32  thread_index)
inlinestatic

Definition at line 188 of file udp.h.

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

◆ udp_punt_unknown()

void udp_punt_unknown ( vlib_main_t vm,
u8  is_ip4,
u8  is_add 
)

Definition at line 545 of file udp_local.c.

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

◆ vnet_get_udp_main()

static udp_main_t* vnet_get_udp_main ( )
inlinestatic

Definition at line 151 of file udp.h.

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

Variable Documentation

◆ format_udp_connection

format_function_t format_udp_connection

Definition at line 234 of file udp.h.

◆ format_udp_header

format_function_t format_udp_header

Definition at line 232 of file udp.h.

◆ format_udp_rx_trace

format_function_t format_udp_rx_trace

Definition at line 233 of file udp.h.

◆ udp4_input_node

vlib_node_registration_t udp4_input_node

(constructor) VLIB_REGISTER_NODE (udp4_input_node)

Definition at line 344 of file udp_input.c.

◆ udp4_local_node

vlib_node_registration_t udp4_local_node

(constructor) VLIB_REGISTER_NODE (udp4_local_node)

Definition at line 403 of file udp_local.c.

◆ udp6_input_node

vlib_node_registration_t udp6_input_node

(constructor) VLIB_REGISTER_NODE (udp6_input_node)

Definition at line 370 of file udp_input.c.

◆ udp6_local_node

vlib_node_registration_t udp6_local_node

(constructor) VLIB_REGISTER_NODE (udp6_local_node)

Definition at line 425 of file udp_local.c.

◆ udp_main

udp_main_t udp_main

Definition at line 23 of file udp.c.

◆ unformat_udp_header

unformat_function_t unformat_udp_header

Definition at line 235 of file udp.h.

◆ unformat_udp_port

unformat_function_t unformat_udp_port

Definition at line 236 of file udp.h.