Messages in this thread Patch in this message | | | Date | Sun, 28 Mar 2004 22:09:32 +0200 | From | Willy TARREAU <> | Subject | Re: [PATCH-2.4.26] ip6tables cleanup |
| |
On Sun, Mar 28, 2004 at 09:27:09PM +0200, Peter Osterlund wrote: > Willy TARREAU <willy@w.ods.org> writes: > > > 2.4.26-rc1 returned this warning compiling ip6_tables : > > > > ip6_tables.c: In function `tcp_match': > > ip6_tables.c:1596: warning: implicit declaration of function `ipv6_skip_exthdr' > > > > I had to add a cast because ipv6_skip_exthdr() expects a 'struct sk_buff*' while > > its caller uses a 'const struct sk_buff*'. Here is a cleanup patch. > > I think it would be better to change the ipv6_skip_exthdr() function > to take a const struct sk_buff* instead. Unnecessary casts are evil.
At first I didn't want to do this because it would have needed to recurse down to other users of skb. But I've just checked and noticed that indeed, only skb_copy_bits() uses the skb, and this one already expects a const. So you're right, and I should have checked further. My bad.
Marcelo, could you please use this simpler patch instead ?
Thanks, Willy
diff -urN linux-2.4.26-rc1/net/ipv6/exthdrs.c linux-2.4.26-rc1-skb/net/ipv6/exthdrs.c --- linux-2.4.26-rc1/net/ipv6/exthdrs.c Sat Mar 20 10:08:21 2004 +++ linux-2.4.26-rc1-skb/net/ipv6/exthdrs.c Sun Mar 28 22:07:21 2004 @@ -783,7 +783,7 @@ * --ANK (980726) */ -int ipv6_skip_exthdr(struct sk_buff *skb, int start, u8 *nexthdrp, int len) +int ipv6_skip_exthdr(const struct sk_buff *skb, int start, u8 *nexthdrp, int len) { u8 nexthdr = *nexthdrp; - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |