- 论坛徽章:
- 0
|
Godbach 发表于 2016-05-04 22:46
回复 5# yywx1314
解析 iphdr 你知道怎么获取吗?
struct sk_buff *sk = NULL;
sk = skb_copy(skb, GFP_ATOMIC);
struct iphdr *iph = ip_hdr(sk);
struct tcphdr *tcph;
char * payload = NULL;
tcph = (void*)iph + iph->ihl * 4;
if (iph->protocol == IPPROTO_TCP)
{
int daddr = iph->daddr;
int dport = tcph->dest;
int port = ntohs(dport);
if (likely(port == 80)) {
if (0 != skb_linearize(skb)) {
return NF_ACCEPT;
}
payload = skb->data + 40
pr_warn("plyload数据 %s\n", payload);//我这里输出的好像不对,是乱码,而且每次刷新都不一样
}
}
我是这样的,你看对吗? |
|