Functions

alexb/lib/lwip/contrib/src/core/ipv6/ip6.c File Reference

#include "lwip/opt.h"
#include "lwip/def.h"
#include "lwip/mem.h"
#include "lwip/ip.h"
#include "lwip/inet.h"
#include "lwip/netif.h"
#include "lwip/icmp.h"
#include "lwip/udp.h"
#include "lwip/tcp_impl.h"
#include "lwip/stats.h"
#include "arch/perf.h"

Functions

void ip_init (void)
struct netifip_route (struct ip_addr *dest)
void ip_input (struct pbuf *p, struct netif *inp)
 This function is called by the network interface device driver when an IP packet is received.
err_t ip_output_if (struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, u8_t ttl, u8_t proto, struct netif *netif)
err_t ip_output (struct pbuf *p, struct ip_addr *src, struct ip_addr *dest, u8_t ttl, u8_t proto)

Function Documentation

void ip_init ( void   ) 
void ip_input ( struct pbuf p,
struct netif inp 
)

This function is called by the network interface device driver when an IP packet is received.

The function does the basic checks of the IP header such as packet size being at least larger than the header size etc. If the packet was not destined for us, the packet is forwarded (using ip_forward). The IP checksum is always checked.

Finally, the packet is sent to the upper layer protocol input function.

Parameters:
p the received IP packet (p->payload points to IP header)
inp the netif on which this packet was received
Returns:
ERR_OK if the packet was processed (could return ERR_* if it wasn't processed, but currently always returns ERR_OK)
err_t ip_output ( struct pbuf p,
struct ip_addr src,
struct ip_addr dest,
u8_t  ttl,
u8_t  proto 
)
err_t ip_output_if ( struct pbuf p,
struct ip_addr src,
struct ip_addr dest,
u8_t  ttl,
u8_t  proto,
struct netif netif 
)
struct netif* ip_route ( struct ip_addr dest  )  [read]
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines