Hi,

> In line 422 of ip6_tables.c:
> protohdr = (u_int32_t *)ipv6 + IPV6_HDR_LEN;
> it should be rewroted to:
> protohdr = (u_int32_t *)((char *)ipv6 + IPV6_HDR_LEN);
The point is Yours! It's a real problem :(

Patch is included against 2.4.18.

Regards

        kisza

-- 
    Andras Kis-Szabo       Security Development, Design and Audit
-------------------------/       Zorp, NetFilter and IPv6
 [EMAIL PROTECTED] /---------------------------------------------->
--- linux.old/net/ipv6/netfilter/ip6_tables.c   Tue Apr  2 21:47:13 2002
+++ linux/net/ipv6/netfilter/ip6_tables.c       Tue Apr  2 21:47:46 2002
@@ -426,7 +426,7 @@
 #endif
                                /* Target might have changed stuff. */
                                ipv6 = (*pskb)->nh.ipv6h;
-                               protohdr = (u_int32_t *)ipv6 + IPV6_HDR_LEN;
+                               protohdr = (u_int32_t *)((char *)ipv6 + IPV6_HDR_LEN);
                                datalen = (*pskb)->len - IPV6_HDR_LEN;
 
                                if (verdict == IP6T_CONTINUE)

Reply via email to