STRUCT SK_BUFF
Section: Linux Networking (9)
Updated: February 2011
Index
Return to Main Contents
NAME
struct_sk_buff - socket buffer
SYNOPSIS
struct sk_buff {
struct sk_buff * next;
struct sk_buff * prev;
ktime_t tstamp;
struct sock * sk;
struct net_device * dev;
char cb[48];
unsigned long _skb_refdst;
#ifdef CONFIG_XFRM
struct sec_path * sp;
#endif
unsigned int len;
unsigned int data_len;
__u16 mac_len;
__u16 hdr_len;
union {unnamed_union};
__u16 vlan_tci;
sk_buff_data_t transport_header;
sk_buff_data_t network_header;
sk_buff_data_t mac_header;
sk_buff_data_t tail;
sk_buff_data_t end;
unsigned char * head;
unsigned char * data;
unsigned int truesize;
atomic_t users;
};
MEMBERS
next
-
Next buffer in list
prev
-
Previous buffer in list
tstamp
-
Time we arrived
sk
-
Socket we are owned by
dev
-
Device we arrived on/are leaving by
cb[48]
-
Control buffer. Free for use by every layer. Put private vars here
_skb_refdst
-
destination entry (with norefcount bit)
sp
-
the security path, used for xfrm
len
-
Length of actual data
data_len
-
Data length
mac_len
-
Length of link layer header
hdr_len
-
writable header length of cloned skb
{unnamed_union}
-
anonymous
vlan_tci
-
vlan tag control information
transport_header
-
Transport layer header
network_header
-
Network layer header
mac_header
-
Link layer header
tail
-
Tail pointer
end
-
End pointer
head
-
Head of buffer
data
-
Data head pointer
truesize
-
Buffer size
users
-
User count - see {datagram,tcp}.c
COPYRIGHT