FD.io VPP  v17.04.2-2-ga8f93f8
Vector Packet Processing
lisp_types.c File Reference
+ Include dependency graph for lisp_types.c:

Go to the source code of this file.

Macros

#define foreach_lcaf_type
 
#define CONCAT(a, b)   a##_##b
 
#define IF(c, t, e)   CONCAT(IF, c)(t, e)
 
#define IF_0(t, e)   e
 
#define IF_1(t, e)   t
 
#define EXPAND_FCN(cond, fcn)   IF(cond, fcn, NULL)
 

Typedefs

typedef u16(* size_to_write_fct) (void *)
 
typedef void *(* cast_fct) (gid_address_t *)
 
typedef u16(* serdes_fct) (u8 *, void *)
 
typedef u8(* addr_len_fct) (void *)
 
typedef void(* copy_fct) (void *, void *)
 
typedef void(* free_fct) (void *)
 
typedef int(* cmp_fct) (void *, void *)
 

Functions

static u16 gid_address_put_no_vni (u8 *b, gid_address_t *gid)
 
static u16 gid_address_size_to_put_no_vni (gid_address_t *gid)
 
static u16 fid_addr_size_to_write (fid_address_t *a)
 
u32 mac_parse (u8 *offset, u8 *a)
 
u8format_ip_address (u8 *s, va_list *args)
 
uword unformat_ip_address (unformat_input_t *input, va_list *args)
 
u8format_ip_prefix (u8 *s, va_list *args)
 
uword unformat_ip_prefix (unformat_input_t *input, va_list *args)
 
uword unformat_mac_address (unformat_input_t *input, va_list *args)
 
u8format_mac_address (u8 *s, va_list *args)
 
uword unformat_nsh_address (unformat_input_t *input, va_list *args)
 
u8format_nsh_address (u8 *s, va_list *args)
 
u8format_fid_address (u8 *s, va_list *args)
 
u8format_gid_address (u8 *s, va_list *args)
 
uword unformat_fid_address (unformat_input_t *i, va_list *args)
 
uword unformat_hmac_key_id (unformat_input_t *input, va_list *args)
 
uword unformat_gid_address (unformat_input_t *input, va_list *args)
 
uword unformat_negative_mapping_action (unformat_input_t *input, va_list *args)
 
u8format_hmac_key_id (u8 *s, va_list *args)
 
u8format_negative_mapping_action (u8 *s, va_list *args)
 
u16 ip_address_size (const ip_address_t *a)
 
u16 ip_version_to_size (u8 ver)
 
u8 ip_version_to_max_plen (u8 ver)
 
static lisp_afi_e ip_version_to_iana_afi (u16 version)
 
static u8 ip_iana_afi_to_version (lisp_afi_e afi)
 
u16 ip_address_size_to_write (ip_address_t *a)
 
u16 ip_address_iana_afi (ip_address_t *a)
 
u8 ip_address_max_len (u8 version)
 
u16 ip4_address_size_to_put ()
 
u16 ip6_address_size_to_put ()
 
u32 ip4_address_put (u8 *b, ip4_address_t *a)
 
u32 ip6_address_put (u8 *b, ip6_address_t *a)
 
u32 ip_address_put (u8 *b, ip_address_t *a)
 
u32 ip_address_parse (void *offset, u16 iana_afi, ip_address_t *dst)
 
void gid_to_dp_address (gid_address_t *g, dp_address_t *d)
 
u32 lcaf_hdr_parse (void *offset, lcaf_t *lcaf)
 
static u8 iana_afi_to_fid_addr_type (u16 type)
 
static u16 fid_addr_parse (u8 *p, fid_address_t *a)
 
u16 sd_parse (u8 *p, void *a)
 
u16 try_parse_src_dst_lcaf (u8 *p, gid_address_t *a)
 
u16 vni_parse (u8 *p, void *a)
 
u16 no_addr_parse (u8 *p, void *a)
 
u32 lcaf_parse (void *offset, gid_address_t *addr)
 
void vni_free (void *a)
 
void no_addr_free (void *a)
 
void sd_free (void *a)
 
void gid_address_free (gid_address_t *a)
 
void gid_address_from_ip (gid_address_t *g, ip_address_t *ip)
 
int ip_address_cmp (const ip_address_t *ip1, const ip_address_t *ip2)
 
void ip_address_copy (ip_address_t *dst, const ip_address_t *src)
 
void ip_address_copy_addr (void *dst, const ip_address_t *src)
 
void ip_address_set (ip_address_t *dst, const void *src, u8 version)
 
void ip_address_to_46 (const ip_address_t *addr, ip46_address_t *a, fib_protocol_t *proto)
 
static void ip_prefix_normalize_ip4 (ip4_address_t *ip4, u8 preflen)
 
static void ip_prefix_normalize_ip6 (ip6_address_t *ip6, u8 preflen)
 
void ip_prefix_normalize (ip_prefix_t *a)
 
void * ip_prefix_cast (gid_address_t *a)
 
u16 ip_prefix_size_to_write (void *pref)
 
u16 ip_prefix_write (u8 *p, void *gid)
 
u8 ip_prefix_length (void *a)
 
void ip_prefix_copy (void *dst, void *src)
 
void mac_copy (void *dst, void *src)
 
void sd_copy (void *dst, void *src)
 
void nsh_copy (void *dst, void *src)
 
int ip_prefix_cmp (ip_prefix_t *p1, ip_prefix_t *p2)
 
void no_addr_copy (void *dst, void *src)
 
void vni_copy (void *dst, void *src)
 
void lcaf_copy (void *dst, void *src)
 
u8 lcaf_length (void *a)
 
u8 mac_length (void *a)
 
u8 sd_length (void *a)
 
u8 nsh_length (void *a)
 
void * lcaf_cast (gid_address_t *a)
 
void * mac_cast (gid_address_t *a)
 
void * sd_cast (gid_address_t *a)
 
void * nsh_cast (gid_address_t *a)
 
u8 no_addr_length (void *a)
 
u8 vni_length (void *a)
 
u16 lcaf_write (u8 *p, void *a)
 
u16 mac_write (u8 *p, void *a)
 
static u16 fid_addr_write (u8 *p, fid_address_t *a)
 
static u8 fid_address_length (fid_address_t *a)
 
u16 sd_write (u8 *p, void *a)
 
u16 nsh_write (u8 *p, void *a)
 
u16 vni_write (u8 *p, void *a)
 
u16 no_addr_write (u8 *p, void *a)
 
u16 no_addr_size_to_write (void *a)
 
u16 vni_size_to_write (void *a)
 
u16 lcaf_size_to_write (void *a)
 
u16 sd_size_to_write (void *a)
 
u16 mac_size_to_write (void *a)
 
u16 nsh_size_to_write (void *a)
 
u8 gid_address_len (gid_address_t *a)
 
u16 gid_address_put (u8 *b, gid_address_t *gid)
 
u16 gid_address_size_to_put (gid_address_t *gid)
 
void * gid_address_cast (gid_address_t *gid, gid_address_type_t type)
 
void gid_address_copy (gid_address_t *dst, gid_address_t *src)
 
u32 gid_address_parse (u8 *offset, gid_address_t *a)
 
void gid_address_ip_set (gid_address_t *dst, void *src, u8 version)
 
int no_addr_cmp (void *a1, void *a2)
 
int vni_cmp (void *a1, void *a2)
 
static int mac_cmp (void *a1, void *a2)
 
static int fid_addr_cmp (fid_address_t *a1, fid_address_t *a2)
 
int sd_cmp (void *a1, void *a2)
 
int gid_address_cmp (gid_address_t *a1, gid_address_t *a2)
 
u32 locator_parse (void *b, locator_t *loc)
 
void locator_copy (locator_t *dst, locator_t *src)
 
u32 locator_cmp (locator_t *l1, locator_t *l2)
 
void locator_free (locator_t *l)
 
void build_src_dst (gid_address_t *sd, gid_address_t *src, gid_address_t *dst)
 

Variables

size_to_write_fct size_to_write_fcts [GID_ADDR_TYPES]
 
serdes_fct write_fcts [GID_ADDR_TYPES]
 
cast_fct cast_fcts [GID_ADDR_TYPES]
 
addr_len_fct addr_len_fcts [GID_ADDR_TYPES]
 
copy_fct copy_fcts [GID_ADDR_TYPES]
 
cmp_fct lcaf_cmp_fcts [LCAF_TYPES]
 
addr_len_fct lcaf_body_length_fcts [LCAF_TYPES]
 
copy_fct lcaf_copy_fcts [LCAF_TYPES]
 
free_fct lcaf_free_fcts [LCAF_TYPES]
 
size_to_write_fct lcaf_size_to_write_fcts [LCAF_TYPES]
 
serdes_fct lcaf_write_fcts [LCAF_TYPES]
 
serdes_fct lcaf_parse_fcts [LCAF_TYPES]
 

Macro Definition Documentation

#define CONCAT (   a,
 
)    a##_##b

Definition at line 70 of file lisp_types.c.

#define EXPAND_FCN (   cond,
  fcn 
)    IF(cond, fcn, NULL)

Definition at line 74 of file lisp_types.c.

#define foreach_lcaf_type
Value:
_(1, no_addr) \
_(0, NULL) \
_(1, vni) \
_(0, NULL) \
_(0, NULL) \
_(0, NULL) \
_(0, NULL) \
_(0, NULL) \
_(0, NULL) \
_(0, NULL) \
_(0, NULL) \
_(0, NULL) \
_(1, sd)
#define NULL
Definition: clib.h:55

Definition at line 45 of file lisp_types.c.

#define IF (   c,
  t,
 
)    CONCAT(IF, c)(t, e)

Definition at line 71 of file lisp_types.c.

#define IF_0 (   t,
 
)    e

Definition at line 72 of file lisp_types.c.

#define IF_1 (   t,
 
)    t

Definition at line 73 of file lisp_types.c.

Typedef Documentation

typedef u8(* addr_len_fct) (void *)

Definition at line 27 of file lisp_types.c.

typedef void*(* cast_fct) (gid_address_t *)

Definition at line 25 of file lisp_types.c.

typedef int(* cmp_fct) (void *, void *)

Definition at line 30 of file lisp_types.c.

typedef void(* copy_fct) (void *, void *)

Definition at line 28 of file lisp_types.c.

typedef void(* free_fct) (void *)

Definition at line 29 of file lisp_types.c.

typedef u16(* serdes_fct) (u8 *, void *)

Definition at line 26 of file lisp_types.c.

typedef u16(* size_to_write_fct) (void *)

Definition at line 24 of file lisp_types.c.

Function Documentation

void build_src_dst ( gid_address_t sd,
gid_address_t src,
gid_address_t dst 
)

Definition at line 1645 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int fid_addr_cmp ( fid_address_t a1,
fid_address_t a2 
)
static

Definition at line 1497 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u16 fid_addr_parse ( u8 p,
fid_address_t a 
)
static

Definition at line 645 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u16 fid_addr_size_to_write ( fid_address_t a)
static

Definition at line 1283 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u16 fid_addr_write ( u8 p,
fid_address_t a 
)
static

Definition at line 1150 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8 fid_address_length ( fid_address_t a)
static

Definition at line 1167 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_fid_address ( u8 s,
va_list *  args 
)

Definition at line 220 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_gid_address ( u8 s,
va_list *  args 
)

Definition at line 241 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_hmac_key_id ( u8 s,
va_list *  args 
)

Definition at line 391 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_ip_address ( u8 s,
va_list *  args 
)

Definition at line 127 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_ip_prefix ( u8 s,
va_list *  args 
)

Definition at line 162 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_mac_address ( u8 s,
va_list *  args 
)

Definition at line 198 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_negative_mapping_action ( u8 s,
va_list *  args 
)

Definition at line 409 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_nsh_address ( u8 s,
va_list *  args 
)

Definition at line 213 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void* gid_address_cast ( gid_address_t gid,
gid_address_type_t  type 
)

Definition at line 1393 of file lisp_types.c.

int gid_address_cmp ( gid_address_t a1,
gid_address_t a2 
)

Definition at line 1537 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gid_address_copy ( gid_address_t dst,
gid_address_t src 
)

Definition at line 1399 of file lisp_types.c.

+ Here is the caller graph for this function:

void gid_address_free ( gid_address_t a)

Definition at line 785 of file lisp_types.c.

+ Here is the caller graph for this function:

void gid_address_from_ip ( gid_address_t g,
ip_address_t *  ip 
)

Definition at line 796 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gid_address_ip_set ( gid_address_t dst,
void *  src,
u8  version 
)

Definition at line 1465 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8 gid_address_len ( gid_address_t a)

Definition at line 1354 of file lisp_types.c.

+ Here is the caller graph for this function:

u32 gid_address_parse ( u8 offset,
gid_address_t a 
)

Definition at line 1419 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 gid_address_put ( u8 b,
gid_address_t gid 
)

Definition at line 1368 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u16 gid_address_put_no_vni ( u8 b,
gid_address_t gid 
)
static

Definition at line 1361 of file lisp_types.c.

+ Here is the caller graph for this function:

u16 gid_address_size_to_put ( gid_address_t gid)

Definition at line 1384 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u16 gid_address_size_to_put_no_vni ( gid_address_t gid)
static

Definition at line 1377 of file lisp_types.c.

+ Here is the caller graph for this function:

void gid_to_dp_address ( gid_address_t g,
dp_address_t d 
)

Definition at line 577 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u8 iana_afi_to_fid_addr_type ( u16  type)
static

Definition at line 630 of file lisp_types.c.

+ Here is the caller graph for this function:

u32 ip4_address_put ( u8 b,
ip4_address_t a 
)

Definition at line 540 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 ip4_address_size_to_put ( )

Definition at line 526 of file lisp_types.c.

+ Here is the caller graph for this function:

u32 ip6_address_put ( u8 b,
ip6_address_t a 
)

Definition at line 549 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 ip6_address_size_to_put ( )

Definition at line 533 of file lisp_types.c.

+ Here is the caller graph for this function:

int ip_address_cmp ( const ip_address_t *  ip1,
const ip_address_t *  ip2 
)

Definition at line 804 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ip_address_copy ( ip_address_t *  dst,
const ip_address_t *  src 
)

Definition at line 821 of file lisp_types.c.

+ Here is the caller graph for this function:

void ip_address_copy_addr ( void *  dst,
const ip_address_t *  src 
)

Definition at line 837 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 ip_address_iana_afi ( ip_address_t *  a)

Definition at line 514 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8 ip_address_max_len ( u8  version)

Definition at line 520 of file lisp_types.c.

+ Here is the caller graph for this function:

u32 ip_address_parse ( void *  offset,
u16  iana_afi,
ip_address_t *  dst 
)

Definition at line 568 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 ip_address_put ( u8 b,
ip_address_t *  a 
)

Definition at line 558 of file lisp_types.c.

+ Here is the call graph for this function:

void ip_address_set ( ip_address_t *  dst,
const void *  src,
u8  version 
)

Definition at line 843 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 ip_address_size ( const ip_address_t *  a)

Definition at line 433 of file lisp_types.c.

+ Here is the caller graph for this function:

u16 ip_address_size_to_write ( ip_address_t *  a)

Definition at line 508 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ip_address_to_46 ( const ip_address_t *  addr,
ip46_address_t *  a,
fib_protocol_t proto 
)

Definition at line 850 of file lisp_types.c.

+ Here is the caller graph for this function:

static u8 ip_iana_afi_to_version ( lisp_afi_e  afi)
inlinestatic

Definition at line 493 of file lisp_types.c.

+ Here is the caller graph for this function:

void* ip_prefix_cast ( gid_address_t a)

Definition at line 943 of file lisp_types.c.

int ip_prefix_cmp ( ip_prefix_t *  p1,
ip_prefix_t *  p2 
)

Definition at line 1004 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ip_prefix_copy ( void *  dst,
void *  src 
)

Definition at line 980 of file lisp_types.c.

+ Here is the caller graph for this function:

u8 ip_prefix_length ( void *  a)

Definition at line 974 of file lisp_types.c.

+ Here is the caller graph for this function:

void ip_prefix_normalize ( ip_prefix_t *  a)

Definition at line 923 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void ip_prefix_normalize_ip4 ( ip4_address_t ip4,
u8  preflen 
)
static

Definition at line 870 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void ip_prefix_normalize_ip6 ( ip6_address_t ip6,
u8  preflen 
)
static

Definition at line 887 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 ip_prefix_size_to_write ( void *  pref)

Definition at line 949 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 ip_prefix_write ( u8 p,
void *  gid 
)

Definition at line 956 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static lisp_afi_e ip_version_to_iana_afi ( u16  version)
inlinestatic

Definition at line 478 of file lisp_types.c.

+ Here is the caller graph for this function:

u8 ip_version_to_max_plen ( u8  ver)

Definition at line 463 of file lisp_types.c.

u16 ip_version_to_size ( u8  ver)

Definition at line 448 of file lisp_types.c.

+ Here is the caller graph for this function:

void* lcaf_cast ( gid_address_t a)

Definition at line 1079 of file lisp_types.c.

void lcaf_copy ( void *  dst,
void *  src 
)

Definition at line 1045 of file lisp_types.c.

u32 lcaf_hdr_parse ( void *  offset,
lcaf_t lcaf 
)

Definition at line 615 of file lisp_types.c.

+ Here is the caller graph for this function:

u8 lcaf_length ( void *  a)

Definition at line 1055 of file lisp_types.c.

u32 lcaf_parse ( void *  offset,
gid_address_t addr 
)

Definition at line 746 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 lcaf_size_to_write ( void *  a)

Definition at line 1315 of file lisp_types.c.

u16 lcaf_write ( u8 p,
void *  a 
)

Definition at line 1117 of file lisp_types.c.

u32 locator_cmp ( locator_t l1,
locator_t l2 
)

Definition at line 1620 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void locator_copy ( locator_t dst,
locator_t src 
)

Definition at line 1611 of file lisp_types.c.

+ Here is the call graph for this function:

void locator_free ( locator_t l)

Definition at line 1638 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 locator_parse ( void *  b,
locator_t loc 
)

Definition at line 1586 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void* mac_cast ( gid_address_t a)

Definition at line 1085 of file lisp_types.c.

static int mac_cmp ( void *  a1,
void *  a2 
)
static

Definition at line 1491 of file lisp_types.c.

+ Here is the caller graph for this function:

void mac_copy ( void *  dst,
void *  src 
)

Definition at line 986 of file lisp_types.c.

+ Here is the caller graph for this function:

u8 mac_length ( void *  a)

Definition at line 1061 of file lisp_types.c.

u32 mac_parse ( u8 offset,
u8 a 
)

Definition at line 1409 of file lisp_types.c.

+ Here is the caller graph for this function:

u16 mac_size_to_write ( void *  a)

Definition at line 1342 of file lisp_types.c.

+ Here is the caller graph for this function:

u16 mac_write ( u8 p,
void *  a 
)

Definition at line 1142 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int no_addr_cmp ( void *  a1,
void *  a2 
)

Definition at line 1472 of file lisp_types.c.

void no_addr_copy ( void *  dst,
void *  src 
)

Definition at line 1028 of file lisp_types.c.

void no_addr_free ( void *  a)

Definition at line 773 of file lisp_types.c.

u8 no_addr_length ( void *  a)

Definition at line 1103 of file lisp_types.c.

u16 no_addr_parse ( u8 p,
void *  a 
)

Definition at line 739 of file lisp_types.c.

u16 no_addr_size_to_write ( void *  a)

Definition at line 1277 of file lisp_types.c.

u16 no_addr_write ( u8 p,
void *  a 
)

Definition at line 1270 of file lisp_types.c.

void* nsh_cast ( gid_address_t a)

Definition at line 1097 of file lisp_types.c.

void nsh_copy ( void *  dst,
void *  src 
)

Definition at line 998 of file lisp_types.c.

+ Here is the caller graph for this function:

u8 nsh_length ( void *  a)

Definition at line 1073 of file lisp_types.c.

u16 nsh_size_to_write ( void *  a)

Definition at line 1348 of file lisp_types.c.

u16 nsh_write ( u8 p,
void *  a 
)

Definition at line 1221 of file lisp_types.c.

void* sd_cast ( gid_address_t a)

Definition at line 1091 of file lisp_types.c.

int sd_cmp ( void *  a1,
void *  a2 
)

Definition at line 1517 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void sd_copy ( void *  dst,
void *  src 
)

Definition at line 992 of file lisp_types.c.

void sd_free ( void *  a)

Definition at line 779 of file lisp_types.c.

u8 sd_length ( void *  a)

Definition at line 1067 of file lisp_types.c.

u16 sd_parse ( u8 p,
void *  a 
)

Definition at line 667 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 sd_size_to_write ( void *  a)

Definition at line 1331 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 sd_write ( u8 p,
void *  a 
)

Definition at line 1182 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 try_parse_src_dst_lcaf ( u8 p,
gid_address_t a 
)

Definition at line 697 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uword unformat_fid_address ( unformat_input_t i,
va_list *  args 
)

Definition at line 267 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uword unformat_gid_address ( unformat_input_t input,
va_list *  args 
)

Definition at line 321 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uword unformat_hmac_key_id ( unformat_input_t input,
va_list *  args 
)

Definition at line 296 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uword unformat_ip_address ( unformat_input_t input,
va_list *  args 
)

Definition at line 147 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uword unformat_ip_prefix ( unformat_input_t input,
va_list *  args 
)

Definition at line 170 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uword unformat_mac_address ( unformat_input_t input,
va_list *  args 
)

Definition at line 190 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uword unformat_negative_mapping_action ( unformat_input_t input,
va_list *  args 
)

Definition at line 362 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uword unformat_nsh_address ( unformat_input_t input,
va_list *  args 
)

Definition at line 206 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int vni_cmp ( void *  a1,
void *  a2 
)

Definition at line 1478 of file lisp_types.c.

+ Here is the call graph for this function:

void vni_copy ( void *  dst,
void *  src 
)

Definition at line 1034 of file lisp_types.c.

+ Here is the call graph for this function:

void vni_free ( void *  a)

Definition at line 765 of file lisp_types.c.

+ Here is the call graph for this function:

u8 vni_length ( void *  a)

Definition at line 1109 of file lisp_types.c.

+ Here is the call graph for this function:

u16 vni_parse ( u8 p,
void *  a 
)

Definition at line 712 of file lisp_types.c.

+ Here is the call graph for this function:

u16 vni_size_to_write ( void *  a)

Definition at line 1300 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u16 vni_write ( u8 p,
void *  a 
)

Definition at line 1228 of file lisp_types.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

addr_len_fct addr_len_fcts[GID_ADDR_TYPES]
Initial value:
=
u8 sd_length(void *a)
Definition: lisp_types.c:1067
u8 lcaf_length(void *a)
Definition: lisp_types.c:1055
u8 nsh_length(void *a)
Definition: lisp_types.c:1073
u8 mac_length(void *a)
Definition: lisp_types.c:1061
u8 ip_prefix_length(void *a)
Definition: lisp_types.c:974

Definition at line 40 of file lisp_types.c.

Initial value:
=
void * ip_prefix_cast(gid_address_t *a)
Definition: lisp_types.c:943
void * sd_cast(gid_address_t *a)
Definition: lisp_types.c:1091
void * lcaf_cast(gid_address_t *a)
Definition: lisp_types.c:1079
void * nsh_cast(gid_address_t *a)
Definition: lisp_types.c:1097
void * mac_cast(gid_address_t *a)
Definition: lisp_types.c:1085

Definition at line 38 of file lisp_types.c.

Initial value:
=
void sd_copy(void *dst, void *src)
Definition: lisp_types.c:992
void lcaf_copy(void *dst, void *src)
Definition: lisp_types.c:1045
void nsh_copy(void *dst, void *src)
Definition: lisp_types.c:998
void mac_copy(void *dst, void *src)
Definition: lisp_types.c:986
void ip_prefix_copy(void *dst, void *src)
Definition: lisp_types.c:980

Definition at line 42 of file lisp_types.c.

addr_len_fct lcaf_body_length_fcts[LCAF_TYPES]
Initial value:
= {
#define _(cond, name)
}
#define foreach_lcaf_type
Definition: lisp_types.c:45

Definition at line 84 of file lisp_types.c.

cmp_fct lcaf_cmp_fcts[LCAF_TYPES]
Initial value:
=
{
#define _(cond, name)
}
#define foreach_lcaf_type
Definition: lisp_types.c:45

Definition at line 76 of file lisp_types.c.

copy_fct lcaf_copy_fcts[LCAF_TYPES]
Initial value:
= {
#define _(cond, name)
}
#define foreach_lcaf_type
Definition: lisp_types.c:45

Definition at line 91 of file lisp_types.c.

free_fct lcaf_free_fcts[LCAF_TYPES]
Initial value:
= {
#define _(cond, name)
}
#define foreach_lcaf_type
Definition: lisp_types.c:45

Definition at line 98 of file lisp_types.c.

serdes_fct lcaf_parse_fcts[LCAF_TYPES]
Initial value:
= {
#define _(cond, name)
}
#define foreach_lcaf_type
Definition: lisp_types.c:45

Definition at line 119 of file lisp_types.c.

size_to_write_fct lcaf_size_to_write_fcts[LCAF_TYPES]
Initial value:
= {
#define _(cond, name)
}
#define foreach_lcaf_type
Definition: lisp_types.c:45

Definition at line 105 of file lisp_types.c.

serdes_fct lcaf_write_fcts[LCAF_TYPES]
Initial value:
= {
#define _(cond, name)
}
#define foreach_lcaf_type
Definition: lisp_types.c:45

Definition at line 112 of file lisp_types.c.

size_to_write_fct size_to_write_fcts[GID_ADDR_TYPES]
Initial value:
=
}
u16 nsh_size_to_write(void *a)
Definition: lisp_types.c:1348
u16 sd_size_to_write(void *a)
Definition: lisp_types.c:1331
u16 mac_size_to_write(void *a)
Definition: lisp_types.c:1342
u16 lcaf_size_to_write(void *a)
Definition: lisp_types.c:1315
u16 ip_prefix_size_to_write(void *pref)
Definition: lisp_types.c:949

Definition at line 32 of file lisp_types.c.

Initial value:
=
u16 ip_prefix_write(u8 *p, void *gid)
Definition: lisp_types.c:956
u16 nsh_write(u8 *p, void *a)
Definition: lisp_types.c:1221
u16 sd_write(u8 *p, void *a)
Definition: lisp_types.c:1182
u16 mac_write(u8 *p, void *a)
Definition: lisp_types.c:1142
u16 lcaf_write(u8 *p, void *a)
Definition: lisp_types.c:1117

Definition at line 36 of file lisp_types.c.