diff -Nrbu ipv6/icmp.c ipv6.OK/icmp.c --- ipv6/icmp.c 2007-10-10 00:31:38.000000000 +0400 +++ ipv6.OK/icmp.c 2008-04-03 16:31:11.000000000 +0400 @@ -584,8 +584,8 @@ if (!pskb_may_pull(skb, inner_offset+8)) return; - saddr = &ipv6_hdr(skb)->saddr; - daddr = &ipv6_hdr(skb)->daddr; + saddr = &((struct ipv6hdr *)skb->data)->saddr; + daddr = &((struct ipv6hdr *)skb->data)->daddr; /* BUGGG_FUTURE: we should try to parse exthdrs in this packet. Without this we will not able f.e. to make source routed