The Pedigree Project  0.1
Public Attributes | List of all members
pbuf Struct Reference

#include <pbuf.h>

+ Collaboration diagram for pbuf:

Public Attributes

struct pbufnext
 
void * payload
 
u16_t tot_len
 
u16_t len
 
u8_t type
 
u8_t flags
 
u16_t ref
 

Detailed Description

Main packet buffer struct

Definition at line 161 of file pbuf.h.

Member Data Documentation

u8_t pbuf::flags

misc flags

Definition at line 184 of file pbuf.h.

Referenced by pbuf_alloc(), pbuf_copy_partial(), pbuf_free(), and pbuf_realloc().

u16_t pbuf::len
struct pbuf* pbuf::next
void* pbuf::payload
u16_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.

Definition at line 191 of file pbuf.h.

Referenced by pbuf_alloc(), pbuf_free(), and pbuf_ref().

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)

Definition at line 175 of file pbuf.h.

Referenced by netif_set_link_down(), pbuf_alloc(), pbuf_cat(), pbuf_coalesce(), pbuf_copy(), pbuf_copy_partial(), pbuf_dechain(), pbuf_memcmp(), pbuf_memfind(), pbuf_realloc(), pbuf_strstr(), pbuf_take(), pbuf_take_at(), LwipSocketSyscalls::recvfrom_msg(), and slipif_poll().

u8_t pbuf::type

pbuf_type as u8_t instead of enum to save space

Definition at line 181 of file pbuf.h.

Referenced by pbuf_alloc(), pbuf_free(), and pbuf_realloc().


The documentation for this struct was generated from the following file: