Hi: This patch updates ext2_header_len which is needed when dst changes. Without this TCP connections started before IPSEC SAs are set up will hang when they try to send large packets. Cheers, -- Debian GNU/Linux 3.0 is out! ( http://www.debian.org/ ) Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Index: kernel-source-2.5/net/ipv4/tcp_output.c =================================================================== RCS file: /home/gondolin/herbert/src/CVS/debian/kernel-source-2.5/net/ipv4/tcp_output.c,v retrieving revision 1.1.1.6 diff -u -r1.1.1.6 tcp_output.c --- kernel-source-2.5/net/ipv4/tcp_output.c 2 Jul 2003 20:50:58 -0000 1.1.1.6 +++ kernel-source-2.5/net/ipv4/tcp_output.c 17 Aug 2003 12:42:43 -0000 @@ -557,6 +557,9 @@ struct dst_entry *dst = __sk_dst_get(sk); int mss_now; + if (dst) + tp->ext2_header_len = dst->header_len; + if (dst && dst->ops->get_mss) pmtu = dst->ops->get_mss(dst, pmtu);