FD.io VPP  v20.09-64-g4f7b92f0a
Vector Packet Processing
ip_types_api.c File Reference
+ Include dependency graph for ip_types_api.c:

Go to the source code of this file.

Macros

#define vl_typedefs   /* define message structures */
 
#define vl_endianfun   /* define message structures */
 
#define vl_print(handle, ...)   vlib_cli_output (handle, __VA_ARGS__)
 
#define vl_printfun
 
#define ip_protocol(n, s)
 
#define ip_protocol(n, s)
 

Functions

int ip_address_family_decode (vl_api_address_family_t af, ip_address_family_t *out)
 Conversion functions to/from (decode/encode) API types to VPP internal types. More...
 
vl_api_address_family_t ip_address_family_encode (ip_address_family_t af)
 
int ip_proto_decode (vl_api_ip_proto_t ipp, ip_protocol_t *out)
 
vl_api_ip_proto_t ip_proto_encode (ip_protocol_t ipp)
 
ip_dscp_t ip_dscp_decode (vl_api_ip_dscp_t in)
 
vl_api_ip_dscp_t ip_dscp_encode (ip_dscp_t dscp)
 
void ip6_address_encode (const ip6_address_t *in, vl_api_ip6_address_t out)
 
void ip6_address_decode (const vl_api_ip6_address_t in, ip6_address_t *out)
 
void ip4_address_encode (const ip4_address_t *in, vl_api_ip4_address_t out)
 
void ip4_address_decode (const vl_api_ip4_address_t in, ip4_address_t *out)
 
static ip46_type_t ip_address_union_decode (const vl_api_address_union_t *in, vl_api_address_family_t af, ip46_address_t *out)
 
ip46_type_t ip_address_decode (const vl_api_address_t *in, ip46_address_t *out)
 Decode/Encode for struct/union types. More...
 
void ip_address_decode2 (const vl_api_address_t *in, ip_address_t *out)
 
static void ip_address_union_encode (const ip46_address_t *in, vl_api_address_family_t af, vl_api_address_union_t *out)
 
void ip_address_encode (const ip46_address_t *in, ip46_type_t type, vl_api_address_t *out)
 
void ip_address_encode2 (const ip_address_t *in, vl_api_address_t *out)
 
void ip_prefix_decode (const vl_api_prefix_t *in, fib_prefix_t *out)
 
int ip_prefix_decode2 (const vl_api_prefix_t *in, ip_prefix_t *out)
 
void ip_prefix_encode (const fib_prefix_t *in, vl_api_prefix_t *out)
 
void ip_prefix_encode2 (const ip_prefix_t *in, vl_api_prefix_t *out)
 
void ip_mprefix_encode (const mfib_prefix_t *in, vl_api_mprefix_t *out)
 
void ip_mprefix_decode (const vl_api_mprefix_t *in, mfib_prefix_t *out)
 

Macro Definition Documentation

◆ ip_protocol [1/2]

#define ip_protocol (   n,
 
)
Value:
case IP_PROTOCOL_##s: \
*out = IP_PROTOCOL_##s; \
return (0);

◆ ip_protocol [2/2]

#define ip_protocol (   n,
 
)
Value:
case IP_PROTOCOL_##s: \
return ((vl_api_ip_proto_t) IP_PROTOCOL_##s);

◆ vl_endianfun

#define vl_endianfun   /* define message structures */

Definition at line 23 of file ip_types_api.c.

◆ vl_print

#define vl_print (   handle,
  ... 
)    vlib_cli_output (handle, __VA_ARGS__)

Definition at line 28 of file ip_types_api.c.

◆ vl_printfun

#define vl_printfun

Definition at line 29 of file ip_types_api.c.

◆ vl_typedefs

#define vl_typedefs   /* define message structures */

Definition at line 19 of file ip_types_api.c.

Function Documentation

◆ ip4_address_decode()

void ip4_address_decode ( const vl_api_ip4_address_t  in,
ip4_address_t out 
)

Definition at line 129 of file ip_types_api.c.

+ Here is the caller graph for this function:

◆ ip4_address_encode()

void ip4_address_encode ( const ip4_address_t in,
vl_api_ip4_address_t  out 
)

Definition at line 123 of file ip_types_api.c.

+ Here is the caller graph for this function:

◆ ip6_address_decode()

void ip6_address_decode ( const vl_api_ip6_address_t  in,
ip6_address_t *  out 
)

Definition at line 117 of file ip_types_api.c.

+ Here is the caller graph for this function:

◆ ip6_address_encode()

void ip6_address_encode ( const ip6_address_t *  in,
vl_api_ip6_address_t  out 
)

Definition at line 111 of file ip_types_api.c.

+ Here is the caller graph for this function:

◆ ip_address_decode()

ip46_type_t ip_address_decode ( const vl_api_address_t *  in,
ip46_address_t *  out 
)

Decode/Encode for struct/union types.

Definition at line 160 of file ip_types_api.c.

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

◆ ip_address_decode2()

void ip_address_decode2 ( const vl_api_address_t *  in,
ip_address_t out 
)

Definition at line 166 of file ip_types_api.c.

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

◆ ip_address_encode()

void ip_address_encode ( const ip46_address_t *  in,
ip46_type_t  type,
vl_api_address_t *  out 
)

Definition at line 194 of file ip_types_api.c.

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

◆ ip_address_encode2()

void ip_address_encode2 ( const ip_address_t in,
vl_api_address_t *  out 
)

Definition at line 216 of file ip_types_api.c.

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

◆ ip_address_family_decode()

int ip_address_family_decode ( vl_api_address_family_t  af,
ip_address_family_t out 
)

Conversion functions to/from (decode/encode) API types to VPP internal types.

These enum decode/encodes use 'int' as the type for the enum because one cannot forward declare an enum

Definition at line 34 of file ip_types_api.c.

+ Here is the caller graph for this function:

◆ ip_address_family_encode()

vl_api_address_family_t ip_address_family_encode ( ip_address_family_t  af)

Definition at line 50 of file ip_types_api.c.

+ Here is the caller graph for this function:

◆ ip_address_union_decode()

static ip46_type_t ip_address_union_decode ( const vl_api_address_union_t *  in,
vl_api_address_family_t  af,
ip46_address_t *  out 
)
static

Definition at line 135 of file ip_types_api.c.

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

◆ ip_address_union_encode()

static void ip_address_union_encode ( const ip46_address_t *  in,
vl_api_address_family_t  af,
vl_api_address_union_t *  out 
)
static

Definition at line 183 of file ip_types_api.c.

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

◆ ip_dscp_decode()

ip_dscp_t ip_dscp_decode ( vl_api_ip_dscp_t  in)

Definition at line 99 of file ip_types_api.c.

+ Here is the caller graph for this function:

◆ ip_dscp_encode()

vl_api_ip_dscp_t ip_dscp_encode ( ip_dscp_t  dscp)

Definition at line 105 of file ip_types_api.c.

+ Here is the caller graph for this function:

◆ ip_mprefix_decode()

void ip_mprefix_decode ( const vl_api_mprefix_t *  in,
mfib_prefix_t out 
)

Definition at line 302 of file ip_types_api.c.

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

◆ ip_mprefix_encode()

void ip_mprefix_encode ( const mfib_prefix_t in,
vl_api_mprefix_t *  out 
)

Definition at line 292 of file ip_types_api.c.

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

◆ ip_prefix_decode()

void ip_prefix_decode ( const vl_api_prefix_t *  in,
fib_prefix_t out 
)

Definition at line 233 of file ip_types_api.c.

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

◆ ip_prefix_decode2()

int ip_prefix_decode2 ( const vl_api_prefix_t *  in,
ip_prefix_t out 
)

Definition at line 250 of file ip_types_api.c.

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

◆ ip_prefix_encode()

void ip_prefix_encode ( const fib_prefix_t in,
vl_api_prefix_t *  out 
)

Definition at line 261 of file ip_types_api.c.

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

◆ ip_prefix_encode2()

void ip_prefix_encode2 ( const ip_prefix_t in,
vl_api_prefix_t *  out 
)

Definition at line 285 of file ip_types_api.c.

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

◆ ip_proto_decode()

int ip_proto_decode ( vl_api_ip_proto_t  ipp,
ip_protocol_t out 
)

Definition at line 65 of file ip_types_api.c.

+ Here is the caller graph for this function:

◆ ip_proto_encode()

vl_api_ip_proto_t ip_proto_encode ( ip_protocol_t  ipp)

Definition at line 83 of file ip_types_api.c.

+ Here is the caller graph for this function: