日期:2014-05-16  浏览次数:20699 次

新内核版本的sk_buff问题!!!急求高见!!!
我现在用的是ubuntu 11.10,内核是3.0.0-17
问题是我最近想写一个基于netfilter框架的流量程序。现在struct sk_buff结构变了

struct sk_buff {
  .
  .
  sk_buff_data_t transport_header;
  sk_buff_data_t network_header;
  sk_buff_data_t mac_header;
  .
  .
}

现在我在框架中挂一个钩子,怎么运用这个sk_buff结构读出包的目的端口啊?急!!谢谢!

还有一个问题为什么在钩子函数中输出skb->data_len的值是0?

谢谢!

------解决方案--------------------
第一个问题:
先找到ip头
C/C++ code
struct iphdr *iph = ip_hdr(pskb);

------解决方案--------------------
楼主咋了...哈哈