lwIP  2.1.0
Lightweight IP stack

Macros

#define IPADDR6_INIT(a, b, c, d)   { { { { a, b, c, d } IPADDR6_ZONE_INIT } }, IPADDR_TYPE_V6 }
 
#define IPADDR6_INIT_HOST(a, b, c, d)   { { { { PP_HTONL(a), PP_HTONL(b), PP_HTONL(c), PP_HTONL(d) } IPADDR6_ZONE_INIT } }, IPADDR_TYPE_V6 }
 
#define IP_IS_V6_VAL(ipaddr)   (IP_GET_TYPE(&ipaddr) == IPADDR_TYPE_V6)
 
#define IP_IS_V6(ipaddr)   (((ipaddr) != NULL) && IP_IS_V6_VAL(*(ipaddr)))
 
#define ip_2_ip6(ipaddr)   (&((ipaddr)->u_addr.ip6))
 
#define IP_ADDR6(ipaddr, i0, i1, i2, i3)
 
#define IP_ADDR6_HOST(ipaddr, i0, i1, i2, i3)   IP_ADDR6(ipaddr,PP_HTONL(i0),PP_HTONL(i1),PP_HTONL(i2),PP_HTONL(i3))
 
#define ip_addr_copy_from_ip6(dest, src)
 
#define ip_addr_copy_from_ip6_packed(dest, src)
 
#define ip_addr_set_zero_ip6(ipaddr)
 
#define IP6_ADDR_ANY   (&ip6_addr_any)
 
#define IP6_ADDR_ANY6   (ip_2_ip6(&ip6_addr_any))
 

Detailed Description

Macro Definition Documentation

◆ IP6_ADDR_ANY

#define IP6_ADDR_ANY   (&ip6_addr_any)

IP6_ADDR_ANY can be used as a fixed ip_addr_t for the IPv6 wildcard address

◆ IP6_ADDR_ANY6

#define IP6_ADDR_ANY6   (ip_2_ip6(&ip6_addr_any))

IP6_ADDR_ANY6 can be used as a fixed ip6_addr_t for the IPv6 wildcard address

◆ ip_2_ip6

#define ip_2_ip6 (   ipaddr)    (&((ipaddr)->u_addr.ip6))

Convert generic ip address to specific protocol version

◆ IP_ADDR6

#define IP_ADDR6 (   ipaddr,
  i0,
  i1,
  i2,
  i3 
)
Value:
do { IP6_ADDR(ip_2_ip6(ipaddr),i0,i1,i2,i3); \
IP_SET_TYPE_VAL(*(ipaddr), IPADDR_TYPE_V6); } while(0)
#define IP6_ADDR(ip6addr, idx0, idx1, idx2, idx3)
Definition: ip6_addr.h:75
Definition: ip_addr.h:58
#define ip_2_ip6(ipaddr)
Definition: ip_addr.h:116

◆ IP_ADDR6_HOST

#define IP_ADDR6_HOST (   ipaddr,
  i0,
  i1,
  i2,
  i3 
)    IP_ADDR6(ipaddr,PP_HTONL(i0),PP_HTONL(i1),PP_HTONL(i2),PP_HTONL(i3))

◆ ip_addr_copy_from_ip6

#define ip_addr_copy_from_ip6 (   dest,
  src 
)
Value:
do{ \
ip6_addr_copy(*ip_2_ip6(&(dest)), src); IP_SET_TYPE_VAL(dest, IPADDR_TYPE_V6); }while(0)
Definition: ip_addr.h:58
#define ip_2_ip6(ipaddr)
Definition: ip_addr.h:116

◆ ip_addr_copy_from_ip6_packed

#define ip_addr_copy_from_ip6_packed (   dest,
  src 
)
Value:
do{ \
ip6_addr_copy_from_packed(*ip_2_ip6(&(dest)), src); IP_SET_TYPE_VAL(dest, IPADDR_TYPE_V6); }while(0)
Definition: ip_addr.h:58
#define ip_2_ip6(ipaddr)
Definition: ip_addr.h:116

◆ ip_addr_set_zero_ip6

#define ip_addr_set_zero_ip6 (   ipaddr)
Value:
do{ \
ip6_addr_set_zero(ip_2_ip6(ipaddr)); IP_SET_TYPE(ipaddr, IPADDR_TYPE_V6); }while(0)
Definition: ip_addr.h:58
#define ip_2_ip6(ipaddr)
Definition: ip_addr.h:116

◆ IP_IS_V6

#define IP_IS_V6 (   ipaddr)    (((ipaddr) != NULL) && IP_IS_V6_VAL(*(ipaddr)))

◆ IP_IS_V6_VAL

#define IP_IS_V6_VAL (   ipaddr)    (IP_GET_TYPE(&ipaddr) == IPADDR_TYPE_V6)

◆ IPADDR6_INIT

#define IPADDR6_INIT (   a,
  b,
  c,
 
)    { { { { a, b, c, d } IPADDR6_ZONE_INIT } }, IPADDR_TYPE_V6 }

◆ IPADDR6_INIT_HOST

#define IPADDR6_INIT_HOST (   a,
  b,
  c,
 
)    { { { { PP_HTONL(a), PP_HTONL(b), PP_HTONL(c), PP_HTONL(d) } IPADDR6_ZONE_INIT } }, IPADDR_TYPE_V6 }