|
lwIP
2.1.1
Lightweight IP stack
|
#include <pbuf.h>
Data Fields | |
| struct pbuf * | next |
| void * | payload |
| u16_t | tot_len |
| u16_t | len |
| u8_t | type_internal |
| u8_t | flags |
| u8_t | ref |
| u8_t | if_idx |
Main packet buffer struct
| u8_t pbuf::flags |
misc flags
| u8_t pbuf::if_idx |
For incoming packets, this contains the input netif's index
| u16_t pbuf::len |
length of this buffer
| struct pbuf* pbuf::next |
next pbuf in singly linked pbuf chain
| void* pbuf::payload |
pointer to the actual data in the buffer
| u8_t pbuf::ref |
the reference count always equals the number of pointers that refer to this pbuf. This can be pointers from an application, the stack itself, or pbuf->next pointers from a chain.
| u16_t pbuf::tot_len |
total length of this buffer and all next buffers in chain belonging to the same packet.
For non-queue packet chains this is the invariant: p->tot_len == p->len + (p->next? p->next->tot_len: 0)
| u8_t pbuf::type_internal |
a bit field indicating pbuf type and allocation sources (see PBUF_TYPE_FLAG_*, PBUF_ALLOC_FLAG_* and PBUF_TYPE_ALLOC_SRC_MASK)