更改IP SPOOFING中IPv6笔误,tcphdr和udphdr按照IPv4方式获取导致段错误
This commit is contained in:
@@ -82,13 +82,15 @@ int redirect_search_htable(unsigned char addr_type,struct kni_pme_info* pmeinfo,
|
||||
|
||||
if(protocol==PROTO_TYPE_TCP)
|
||||
{
|
||||
tcphdr=(struct kni_tcp_hdr*)((char*)ipv4_hdr+4*(ipv4_hdr->ip_hl));
|
||||
// tcphdr=(struct kni_tcp_hdr*)((char*)ipv4_hdr+4*(ipv4_hdr->ip_hl));
|
||||
tcphdr =(struct kni_tcp_hdr*)( (unsigned char*)ipv6_hdr + sizeof(struct kni_ipv6_hdr));
|
||||
htable_key_v6.source=tcphdr->th_sport;
|
||||
htable_key_v6.dest=tcphdr->th_dport;
|
||||
}
|
||||
else if(protocol == PROTO_TYPE_UDP)
|
||||
{
|
||||
udphdr=(struct kni_udp_hdr*)((char*)ipv4_hdr+4*(ipv4_hdr->ip_hl));
|
||||
// udphdr=(struct kni_udp_hdr*)((char*)ipv4_hdr+4*(ipv4_hdr->ip_hl));
|
||||
udphdr==(struct kni_tcp_hdr*)( (unsigned char*)ipv6_hdr + sizeof(struct kni_ipv6_hdr));
|
||||
htable_key_v6.source=udphdr->uh_sport;
|
||||
htable_key_v6.dest=udphdr->uh_dport;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user