| lwIP
    2.0.3
    Lightweight IP stack | 
#include "lwip/opt.h"#include "lwip/pbuf.h"#include "lwip/def.h"#include "lwip/ip.h"#include "lwip/ip_addr.h"#include "lwip/ip6_addr.h"| Data Structures | |
| struct | raw_pcb | 
| Typedefs | |
| typedef u8_t(* | raw_recv_fn) (void *arg, struct raw_pcb *pcb, struct pbuf *p, const ip_addr_t *addr) | 
| Functions | |
| struct raw_pcb * | raw_new (u8_t proto) | 
| struct raw_pcb * | raw_new_ip_type (u8_t type, u8_t proto) | 
| void | raw_remove (struct raw_pcb *pcb) | 
| err_t | raw_bind (struct raw_pcb *pcb, const ip_addr_t *ipaddr) | 
| err_t | raw_connect (struct raw_pcb *pcb, const ip_addr_t *ipaddr) | 
| err_t | raw_sendto (struct raw_pcb *pcb, struct pbuf *p, const ip_addr_t *ipaddr) | 
| err_t | raw_send (struct raw_pcb *pcb, struct pbuf *p) | 
| void | raw_recv (struct raw_pcb *pcb, raw_recv_fn recv, void *recv_arg) | 
| u8_t | raw_input (struct pbuf *p, struct netif *inp) | 
| void | raw_netif_ip_addr_changed (const ip_addr_t *old_addr, const ip_addr_t *new_addr) | 
raw API (to be used from TCPIP thread)
See also RAW 
Function prototype for raw pcb receive callback functions.
| arg | user supplied argument (raw_pcb.recv_arg) | 
| pcb | the raw_pcb which received data | 
| p | the packet buffer that was received | 
| addr | the remote IP address from which the packet was received | 
Determine if in incoming IP packet is covered by a RAW PCB and if so, pass it to a user-provided receive callback function.
Given an incoming IP datagram (as a chain of pbufs) this function finds a corresponding RAW PCB and calls the corresponding receive callback function.
| p | pbuf to be demultiplexed to a RAW PCB. | 
| inp | network interface on which the datagram was received. |