lwIP  2.0.1
Lightweight IP stack

Modules

 IPv4
 
 IPv6
 

Macros

#define ip_output(p, src, dest, ttl, tos, proto)
 
#define ip_output_if(p, src, dest, ttl, tos, proto, netif)
 
#define ip_output_if_src(p, src, dest, ttl, tos, proto, netif)
 
#define ip_route(src, dest)
 
#define ip_netif_get_local_ip(netif, dest)
 

Detailed Description

Macro Definition Documentation

#define ip_netif_get_local_ip (   netif,
  dest 
)
Value:
(IP_IS_V6(dest) ? \
ip6_netif_get_local_ip(netif, ip_2_ip6(dest)) : \
ip4_netif_get_local_ip(netif))
#define IP_IS_V6(ipaddr)
Definition: ip_addr.h:101
Definition: netif.h:225
#define ip_2_ip6(ipaddr)
Definition: ip_addr.h:113

Get netif for IP.

#define ip_output (   p,
  src,
  dest,
  ttl,
  tos,
  proto 
)
Value:
(IP_IS_V6(dest) ? \
ip6_output(p, ip_2_ip6(src), ip_2_ip6(dest), ttl, tos, proto) : \
ip4_output(p, ip_2_ip4(src), ip_2_ip4(dest), ttl, tos, proto))
#define ip_2_ip4(ipaddr)
Definition: ip_addr.h:117
#define IP_IS_V6(ipaddr)
Definition: ip_addr.h:101
err_t ip4_output(struct pbuf *p, const ip4_addr_t *src, const ip4_addr_t *dest, u8_t ttl, u8_t tos, u8_t proto)
Definition: ip4.c:978
err_t ip6_output(struct pbuf *p, const ip6_addr_t *src, const ip6_addr_t *dest, u8_t hl, u8_t tc, u8_t nexth)
Definition: ip6.c:932
#define ip_2_ip6(ipaddr)
Definition: ip_addr.h:113

Output IP packet, netif is selected by source address

#define ip_output_if (   p,
  src,
  dest,
  ttl,
  tos,
  proto,
  netif 
)
Value:
(IP_IS_V6(dest) ? \
ip6_output_if(p, ip_2_ip6(src), ip_2_ip6(dest), ttl, tos, proto, netif) : \
ip4_output_if(p, ip_2_ip4(src), ip_2_ip4(dest), ttl, tos, proto, netif))
#define ip_2_ip4(ipaddr)
Definition: ip_addr.h:117
err_t ip6_output_if(struct pbuf *p, const ip6_addr_t *src, const ip6_addr_t *dest, u8_t hl, u8_t tc, u8_t nexth, struct netif *netif)
Definition: ip6.c:811
#define IP_IS_V6(ipaddr)
Definition: ip_addr.h:101
Definition: netif.h:225
err_t ip4_output_if(struct pbuf *p, const ip4_addr_t *src, const ip4_addr_t *dest, u8_t ttl, u8_t tos, u8_t proto, struct netif *netif)
Definition: ip4.c:751
#define ip_2_ip6(ipaddr)
Definition: ip_addr.h:113

Output IP packet to specified interface

#define ip_output_if_src (   p,
  src,
  dest,
  ttl,
  tos,
  proto,
  netif 
)
Value:
(IP_IS_V6(dest) ? \
ip6_output_if_src(p, ip_2_ip6(src), ip_2_ip6(dest), ttl, tos, proto, netif) : \
ip4_output_if_src(p, ip_2_ip4(src), ip_2_ip4(dest), ttl, tos, proto, netif))
err_t ip6_output_if_src(struct pbuf *p, const ip6_addr_t *src, const ip6_addr_t *dest, u8_t hl, u8_t tc, u8_t nexth, struct netif *netif)
Definition: ip6.c:835
#define ip_2_ip4(ipaddr)
Definition: ip_addr.h:117
#define IP_IS_V6(ipaddr)
Definition: ip_addr.h:101
Definition: netif.h:225
err_t ip4_output_if_src(struct pbuf *p, const ip4_addr_t *src, const ip4_addr_t *dest, u8_t ttl, u8_t tos, u8_t proto, struct netif *netif)
Definition: ip4.c:791
#define ip_2_ip6(ipaddr)
Definition: ip_addr.h:113

Output IP packet to interface specifying source address

#define ip_route (   src,
  dest 
)
Value:
(IP_IS_V6(dest) ? \
ip6_route(ip_2_ip6(src), ip_2_ip6(dest)) : \
#define ip_2_ip4(ipaddr)
Definition: ip_addr.h:117
#define IP_IS_V6(ipaddr)
Definition: ip_addr.h:101
struct netif * ip4_route_src(const ip4_addr_t *dest, const ip4_addr_t *src)
Definition: ip4.c:125
struct netif * ip6_route(const ip6_addr_t *src, const ip6_addr_t *dest)
Definition: ip6.c:80
#define ip_2_ip6(ipaddr)
Definition: ip_addr.h:113

Get netif for address combination. See ip6_route and ip4_route