__PSKB_PULL_TAIL(9) Linux Networking __PSKB_PULL_TAIL(9)NAME
__pskb_pull_tail - advance tail of skb header
SYNOPSIS
unsigned char * __pskb_pull_tail(struct sk_buff * skb, int delta);
ARGUMENTS
skb
buffer to reallocate
delta
number of bytes to advance tail
DESCRIPTION
The function makes a sense only on a fragmented sk_buff, it expands header moving its tail forward and copying necessary data from
fragmented part.
sk_buff MUST have reference count of 1.
Returns NULL (and sk_buff does not change) if pull failed or value of new tail of skb in the case of success.
All the pointers pointing into skb header may change and must be reloaded after call to this function.
COPYRIGHT Kernel Hackers Manual 2.6. July 2010 __PSKB_PULL_TAIL(9)
Check Out this Related Man Page
__SKB_RECV_DATAGRAM(9) Linux Networking __SKB_RECV_DATAGRAM(9)NAME
__skb_recv_datagram - Receive a datagram skbuff
SYNOPSIS
struct sk_buff * __skb_recv_datagram(struct sock * sk, unsigned int flags, int * peeked, int * off, int * err);
ARGUMENTS
sk
socket
flags
MSG_ flags
peeked
returns non-zero if this packet has been seen before
off
an offset in bytes to peek skb from. Returns an offset within an skb where data actually starts
err
error code returned
DESCRIPTION
Get a datagram skbuff, understands the peeking, nonblocking wakeups and possible races. This replaces identical code in packet, raw and
udp, as well as the IPX AX.25 and Appletalk. It also finally fixes the long standing peek and read race for datagram sockets. If you alter
this routine remember it must be re-entrant.
This function will lock the socket if a skb is returned, so the caller needs to unlock the socket in that case (usually by calling
skb_free_datagram)
* It does not lock socket since today. This function is * free of race conditions. This measure should/can improve * significantly datagram
socket latencies at high loads, * when data copying to user space takes lots of time. * (BTW I've just killed the last cli in
IP/IPv6/core/netlink/packet * 8) Great win.) * --ANK (980729)
The order of the tests when we find no data waiting are specified quite explicitly by POSIX 1003.1g, don't change them without having the
standard around please.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 __SKB_RECV_DATAGRAM(9)