30 void vni_copy (
void * dst,
void * src);
105 ip_address_t *
a = va_arg (*args, ip_address_t *);
125 ip_address_t *
a = va_arg(*args, ip_address_t *);
138 ip_prefix_t *
a = va_arg (*args, ip_prefix_t *);
145 ip_prefix_t *
a = va_arg(*args, ip_prefix_t *);
266 return version ==
IP4 ? 32 : 128;
287 u8 *p = b +
sizeof (
u16);
296 u8 *p = b +
sizeof (
u16);
306 u8 * p = b +
sizeof (
u16);
308 return (len +
sizeof (
u16));
317 return(
sizeof(
u16) + size);
324 lcaf->
type = lh->type;
332 return sizeof (lh[0]);
340 vni_vni (v) = clib_net_to_host_u32 ( *(
u32 *) p);
341 size +=
sizeof (
u32);
345 memset (gid, 0,
sizeof (gid[0]));
362 offset +=
sizeof (
u16);
374 return sizeof (
u16) + size;
439 ip_prefix_t *
a = (ip_prefix_t *) pref;
446 ip_prefix_t *
a = (ip_prefix_t *) pref;
553 size +=
sizeof (
u16);
554 memset (h, 0,
sizeof (h[0]));
563 size +=
sizeof (h[0]);
578 *(
u32 *)p = clib_host_to_net_u32 (
vni_vni (v));
579 size +=
sizeof (
u32);
619 size +=
sizeof (
u16);
672 afi = clib_net_to_host_u16 (*((
u16 *) offset));
size_to_write_fct size_to_write_fcts[GID_ADDR_TYPES]
void vni_copy(void *dst, void *src)
#define gid_address_type(_a)
cast_fct cast_fcts[GID_ADDR_TYPES]
u16 no_addr_parse(u8 *p, void *a)
static void(BVT(clib_bihash)*h, BVT(clib_bihash_value)*v)
bad routing header type(not 4)") sr_error (NO_MORE_SEGMENTS
always_inline u8 ip_iana_afi_to_version(lisp_afi_e afi)
void * ip_prefix_cast(gid_address_t *a)
always_inline void clib_mem_free(void *p)
u16 no_addr_size_to_write(void *)
u16 vni_parse(u8 *p, void *a)
#define ip_prefix_len(_a)
uword unformat_ip_address(unformat_input_t *input, va_list *args)
int no_addr_cmp(void *a1, void *a2)
#define gid_address_lcaf(_a)
u8 lcaf_prefix_length(void *a)
#define ip_prefix_version(_a)
void lcaf_copy(void *dst, void *src)
#define LOC_REACHABLE(h_)
always_inline lisp_afi_e ip_version_to_iana_afi(u16 version)
serdes_fct lcaf_write_fcts[LCAF_TYPES]
u32 locator_parse(void *b, locator_t *loc)
void * lcaf_cast(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 no_addr_free(void *a)
u32 ip6_address_put(u8 *b, ip6_address_t *a)
u16 no_addr_length(void *a)
free_fct lcaf_free_fcts[LCAF_TYPES]
void locator_copy(locator_t *dst, locator_t *src)
u8 ip_version_to_max_plen(u8 ver)
u16 ip_address_size(ip_address_t *a)
u32 ip_address_parse(void *offset, u16 iana_afi, ip_address_t *dst)
u16 ip_prefix_write(u8 *p, void *pref)
#define clib_warning(format, args...)
void ip_address_copy_addr(void *dst, ip_address_t *src)
u16 ip_version_to_size(u8 ver)
#define ip_addr_version(_a)
void *(* cast_fct)(gid_address_t *)
int vni_cmp(void *, void *)
u16 vni_size_to_write(void *a)
u8(* addr_len_fct)(void *)
u16(* serdes_fct)(u8 *, void *)
u32 lcaf_hdr_parse(void *offset, lcaf_t *lcaf)
void gid_address_free(gid_address_t *a)
uword unformat_gid_address(unformat_input_t *input, va_list *args)
u8 * format_gid_address(u8 *s, va_list *args)
serdes_fct lcaf_parse_fcts[LCAF_TYPES]
u32 ip_address_put(u8 *b, ip_address_t *a)
u16 ip4_address_size_to_put()
#define gid_address_ippref(_a)
u16 lcaf_size_to_write(void *a)
u16(* size_to_write_fct)(void *)
always_inline void * clib_mem_alloc(uword size)
cmp_fct lcaf_cmp_fcts[LCAF_TYPES]
int gid_address_cmp(gid_address_t *a1, gid_address_t *a2)
#define gid_address_ippref_len(_a)
#define clib_memcpy(a, b, c)
u32 locator_cmp(locator_t *l1, locator_t *l2)
addr_len_fct addr_len_fcts[GID_ADDR_TYPES]
void no_addr_copy(void *, void *)
size_to_write_fct lcaf_size_to_write_fcts[LCAF_TYPES]
struct _gid_address_t gid_address_t
struct _lcaf_hdr_t lcaf_hdr_t
void(* copy_fct)(void *, void *)
u8 * format_ip_address(u8 *s, va_list *args)
u16 no_addr_write(u8 *p, void *a)
int ip_prefix_cmp(ip_prefix_t *p1, ip_prefix_t *p2)
void * gid_address_cast(gid_address_t *gid, gid_address_type_t type)
struct _locator_hdr locator_hdr_t
uword unformat_ip_prefix(unformat_input_t *input, va_list *args)
u32 ip4_address_put(u8 *b, ip4_address_t *a)
u8 * format_ip_prefix(u8 *s, va_list *args)
#define gid_address_ip(_a)
void locator_free(locator_t *l)
u16 ip_address_size_to_write(ip_address_t *a)
u8 gid_address_len(gid_address_t *a)
int ip_address_cmp(ip_address_t *ip1, ip_address_t *ip2)
copy_fct lcaf_copy_fcts[LCAF_TYPES]
u8 ip_address_max_len(u8 version)
#define LOC_MPRIORITY(h_)
void gid_address_copy(gid_address_t *dst, gid_address_t *src)
u16 vni_write(u8 *p, void *a)
int(* cmp_fct)(void *, void *)
u16 ip_address_iana_afi(ip_address_t *a)
size_to_write_fct lcaf_body_length_fcts[LCAF_TYPES]
u32 gid_address_parse(u8 *offset, gid_address_t *a)
copy_fct copy_fcts[GID_ADDR_TYPES]
u16 lcaf_write(u8 *p, void *a)
u8 ip_prefix_length(void *a)
void ip_prefix_copy(void *dst, void *src)
u16 ip_prefix_size_to_write(void *pref)
u16 ip6_address_size_to_put()
void ip_address_copy(ip_address_t *dst, ip_address_t *src)
#define ip_prefix_addr(_a)
u32 lcaf_parse(void *offset, gid_address_t *addr)
serdes_fct write_fcts[GID_ADDR_TYPES]