2.6.20内核以后的skbuff.h头文件

内核头文件 /include/linux/skbuff.h

2.6.20内核以后的skbuff.h头文件中将struct sk_buff结构体修改了,h中包含有传输层的报文头,nh中包含有网络层的报文头,而mac中包含的是链路层的报文头。
linux-2.6.20以后的内核头文件sk_buff.h中这三个成员提取到单独的变量对应关系如下:
h-->transport_header;
nh-->network_header;
mac-->mac_header;

例如:

-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22)   
-    skb->mac_header = skb->data;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
+    skb_reset_mac_header(skb);
 #else
     skb->mac.raw = skb->data;
 #endif
 
  #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22)
-            skb1->network_header = skb1->data;
+            skb_reset_network_header(skb1);
 #else
             skb1->nh.raw = skb1->data;
 #endif

 

你可能感兴趣的:(mac,include,结构体,休闲,6)