FD.io VPP  v17.10-9-gd594711
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_udp4_dst_port
 
#define foreach_udp6_dst_port
 

Typedefs

typedef struct _udp_uri_main udp_uri_main_t
 

Enumerations

enum  udp_error_t { UDP_N_ERROR }
 
enum  udp_dst_port_t { foreach_udp6_dst_port }
 
enum  udp6_dst_port_t { foreach_udp6_dst_port }
 
enum  udp_af_t { UDP_IP6 = 0, UDP_IP4, N_UDP_AF }
 

Functions

static udp_uri_main_tvnet_get_udp_main ()
 
static udp_connection_tudp_connection_get (u32 conn_index, u32 thread_index)
 
static udp_connection_tudp_listener_get (u32 conn_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_register_dst_port (vlib_main_t *vm, udp_dst_port_t dst_port, u32 node_index, u8 is_ip4)
 
void udp_unregister_dst_port (vlib_main_t *vm, udp_dst_port_t dst_port, u8 is_ip4)
 
void udp_punt_unknown (vlib_main_t *vm, u8 is_ip4, u8 is_add)
 
static void ip_udp_fixup_one (vlib_main_t *vm, vlib_buffer_t *b0, u8 is_ip4)
 
static void ip_udp_encap_one (vlib_main_t *vm, vlib_buffer_t *b0, u8 *ec0, word ec_len, u8 is_ip4)
 
static void ip_udp_encap_two (vlib_main_t *vm, vlib_buffer_t *b0, vlib_buffer_t *b1, u8 *ec0, u8 *ec1, word ec_len, u8 is_v4)
 

Variables

udp_uri_main_t udp_uri_main
 
vlib_node_registration_t udp4_uri_input_node
 (constructor) VLIB_REGISTER_NODE (udp4_uri_input_node) More...
 
format_function_t format_udp_header
 
format_function_t format_udp_rx_trace
 
unformat_function_t unformat_udp_header
 

Macro Definition Documentation

#define foreach_udp4_dst_port
Value:
_ (67, dhcp_to_server) \
_ (68, dhcp_to_client) \
_ (500, ikev2) \
_ (2152, GTPU) \
_ (3784, bfd4) \
_ (3785, bfd_echo4) \
_ (4341, lisp_gpe) \
_ (4342, lisp_cp) \
_ (4739, ipfix) \
_ (4789, vxlan) \
_ (4789, vxlan6) \
_ (4790, VXLAN_GPE) \
_ (6633, vpath_3)

Definition at line 80 of file udp.h.

foreach_udp6_dst_port
Value:
_ (547, dhcpv6_to_server) \
_ (546, dhcpv6_to_client) \
_ (2152, GTPU6) \
_ (3784, bfd6) \
_ (3785, bfd_echo6) \
_ (4341, lisp_gpe6) \
_ (4342, lisp_cp6) \
_ (4790, VXLAN6_GPE) \
_ (6633, vpath6_3)

Definition at line 96 of file udp.h.

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

Definition at line 74 of file udp.h.

Typedef Documentation

typedef struct _udp_uri_main udp_uri_main_t

Enumeration Type Documentation

Enumerator
foreach_udp6_dst_port 

Definition at line 114 of file udp.h.

enum udp_af_t
Enumerator
UDP_IP6 
UDP_IP4 
N_UDP_AF 

Definition at line 136 of file udp.h.

Enumerator
foreach_udp6_dst_port 

Definition at line 107 of file udp.h.

Enumerator
UDP_N_ERROR 

Definition at line 72 of file udp.h.

Function Documentation

static void ip_udp_encap_one ( vlib_main_t vm,
vlib_buffer_t b0,
u8 ec0,
word  ec_len,
u8  is_ip4 
)
inlinestatic

Definition at line 239 of file udp.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void ip_udp_encap_two ( vlib_main_t vm,
vlib_buffer_t b0,
vlib_buffer_t b1,
u8 ec0,
u8 ec1,
word  ec_len,
u8  is_v4 
)
inlinestatic

Definition at line 267 of file udp.h.

+ Here is the call graph for this function:

static void ip_udp_fixup_one ( vlib_main_t vm,
vlib_buffer_t b0,
u8  is_ip4 
)
inlinestatic

Definition at line 185 of file udp.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Definition at line 60 of file udp.h.

+ Here is the caller graph for this function:

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 163 of file udp.h.

+ Here is the caller graph for this function:

static udp_connection_t* udp_listener_get ( u32  conn_index)
inlinestatic

Definition at line 67 of file udp.h.

+ Here is the caller graph for this function:

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

Definition at line 549 of file udp_local.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void udp_register_dst_port ( vlib_main_t vm,
udp_dst_port_t  dst_port,
u32  node_index,
u8  is_ip4 
)

Definition at line 488 of file udp_local.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void udp_unregister_dst_port ( vlib_main_t vm,
udp_dst_port_t  dst_port,
u8  is_ip4 
)

Definition at line 526 of file udp_local.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static udp_uri_main_t* vnet_get_udp_main ( )
inlinestatic

Definition at line 54 of file udp.h.

+ Here is the caller graph for this function:

Variable Documentation

format_function_t format_udp_header

Definition at line 169 of file udp.h.

format_function_t format_udp_rx_trace

Definition at line 170 of file udp.h.

vlib_node_registration_t udp4_uri_input_node
Initial value:
=
{
.function = udp4_uri_input_node_fn,.name = "udp4-uri-input",.vector_size =
sizeof (u32),.format_trace = format_udp4_uri_input_trace,.type =
.next_nodes =
{
[UDP4_URI_INPUT_NEXT_DROP] = "error-drop",}
,}
static uword udp4_uri_input_node_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: udp_input.c:66
static u8 * format_udp4_uri_input_trace(u8 *s, va_list *args)
Definition: udp_input.c:42
static char * udp4_uri_input_error_strings[]
Definition: udp_input.c:59
#define ARRAY_LEN(x)
Definition: clib.h:59
unsigned int u32
Definition: types.h:88

(constructor) VLIB_REGISTER_NODE (udp4_uri_input_node)

Definition at line 303 of file udp_input.c.

udp_uri_main_t udp_uri_main

Definition at line 25 of file udp.c.

unformat_function_t unformat_udp_header

Definition at line 172 of file udp.h.