more info on ipsec-related invalid trusize

4 messages, 3 authors, 2008-11-26 · open the first message on its own page

more info on ipsec-related invalid trusize

From: Alexey Dobriyan <hidden>
Date: 2008-11-25 04:25:05

http://bugzilla.kernel.org/show_bug.cgi?id=10996
http://marc.info/?l=linux-netdev&m=122641698504902&w=2

SKB BUG: Invalid truesize (344) len=134, sizeof(sk_buff)=216

This correlates with ping6 the box to death with the following IPsec
configuration and entering/leaving tcpdumping on the other end.

Numbers are always the same.

It _looks_like_ IPv4 ping is fine, but I haven't experimented much.


#!/usr/sbin/setkey -f
flush;
spdflush;

add 192.168.0.1 192.168.0.42 ah 15700 -A hmac-md5 "1234567890123456";
add 192.168.0.1 192.168.0.42 esp 15701 -E 3des-cbc "123456789012123456789012";

add 192.168.0.42 192.168.0.1 ah 24500 -A hmac-md5 "1234567890123456";
add 192.168.0.42 192.168.0.1 esp 24501 -E 3des-cbc "123456789012123456789012";

spdadd 192.168.0.42 192.168.0.1 any -P out ipsec
	esp/transport//require
	ah/transport//require;

spdadd 192.168.0.1 192.168.0.42 any -P in ipsec
	esp/transport//require
	ah/transport//require;

# ipv6
add -6 fe80::218:f3ff:fea2:9f90 fe80::21b:38ff:feaf:2249 ah 4242 -A hmac-md5 "1234567890123457";
add -6 fe80::218:f3ff:fea2:9f90 fe80::21b:38ff:feaf:2249 esp 4243 -E 3des-cbc "123456789012123456789012";

add -6 fe80::21b:38ff:feaf:2249 fe80::218:f3ff:fea2:9f90 ah 4244 -A hmac-md5 "1234567890123457";
add -6 fe80::21b:38ff:feaf:2249 fe80::218:f3ff:fea2:9f90 esp 4245 -E 3des-cbc "123456789012123456789012";

spdadd fe80::21b:38ff:feaf:2249 fe80::218:f3ff:fea2:9f90 any -P out ipsec
	esp/transport//require
	ah/transport//require;

spdadd fe80::218:f3ff:fea2:9f90 fe80::21b:38ff:feaf:2249 any -P in ipsec
	esp/transport//require
	ah/transport//require;

Re: more info on ipsec-related invalid trusize

From: Herbert Xu <herbert@gondor.apana.org.au>
Date: 2008-11-25 11:37:18

Alexey Dobriyan [off-list ref] wrote:
http://bugzilla.kernel.org/show_bug.cgi?id=10996
http://marc.info/?l=linux-netdev&m=122641698504902&w=2

SKB BUG: Invalid truesize (344) len=134, sizeof(sk_buff)=216

This correlates with ping6 the box to death with the following IPsec
configuration and entering/leaving tcpdumping on the other end.
It's a known problem.  When we expand packet headers in IPsec
we're not adjusting the truesize.

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} [off-list ref]
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

Re: more info on ipsec-related invalid trusize

From: David Miller <davem@davemloft.net>
Date: 2008-11-26 05:50:02

From: Herbert Xu <herbert@gondor.apana.org.au>
Date: Tue, 25 Nov 2008 18:52:16 +0800
Alexey Dobriyan [off-list ref] wrote:
quoted
http://bugzilla.kernel.org/show_bug.cgi?id=10996
http://marc.info/?l=linux-netdev&m=122641698504902&w=2

SKB BUG: Invalid truesize (344) len=134, sizeof(sk_buff)=216

This correlates with ping6 the box to death with the following IPsec
configuration and entering/leaving tcpdumping on the other end.
It's a known problem.  When we expand packet headers in IPsec
we're not adjusting the truesize.
Care to elaborate on this a little bit more to refresh
everyone's memory and perhaps someone can work on a fix?

Thanks!

Re: more info on ipsec-related invalid trusize

From: Herbert Xu <herbert@gondor.apana.org.au>
Date: 2008-11-26 05:57:52

On Tue, Nov 25, 2008 at 09:50:01PM -0800, David Miller wrote:
Care to elaborate on this a little bit more to refresh
everyone's memory and perhaps someone can work on a fix?
For a start have a look at xfrm_state_check_space where we expand
the packet without adjusting its truesize.

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} [off-list ref]
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help