- 论坛徽章:
- 0
|
luoyan_xy 发表于 2012-03-31 23:14 ![]()
并不是任意时刻skb中的头部指针都是已经被设置好的,比如3层头的指针是在网卡将要把包交给内核时才设置的 ...
感谢你的回答。
119 printk("ip header : %u\n", iph);
120 printk("udp header : %u\n", udph);
121
122
123 char netData[8];
124 memcpy(netData, data, sizeof(netData));
125 if (!strncmp(netData, "1234567", 7)) {
126
127 printk("a package we hoped received!\n");
128
129 u16 tempPort = udph->source;//switch udp port
130 udph->source = udph->dest;//give a port
131 udph->dest = htons(hostPort);
132
133 iph->daddr = iph->saddr;//switch ip address
134 iph->saddr = htonl(address);
135 memcpy(hostIP, iph->daddr, sizeof(hostIP));
上面是我在紧接着前面的代码。实际上我在使用udph和iph的时候没有任何问题。 |
|