>Number: 170116 >Category: kern >Synopsis: IPv6 with AH broken ~2012.07.08.12.00.00 >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Jul 24 19:10:11 UTC 2012 >Closed-Date: >Last-Modified: >Originator: f...@xocolatl.com >Release: FreeBSD 9.1-PRERELEASE >Organization: poor >Environment: System: FreeBSD ncst48.local.lab 9.0-STABLE FreeBSD 9.0-STABLE #52: Tue Jul 24 17:49:29 UTC 2012 r...@ncst48.local.lab:/usr/obj/usr/src/sys/NCST48 i386
>Description: IPv6 TCP frames using AH are not transmitted and dropped, with error: 9.1-PRERELEASE (Current as of 2012.07.24.00.00) kernel: in6_delayed_cksum: delayed m_pullup, m->len: 40 off: 46 9.0-STABLE (From 2012.07.08.12.15.00) kernel: in_cksum_skip: out of data by 64369 (number varies) 9.0-STABLE (From 2012.07.08.12.00.00) Works but prints in_cksum_skip error. Broken: cvsup date=2012.07.08.12.15.00 Edit src/sys/net/if_loop.c Add delta 1.143.2.2 2012.07.08.12.01.11 bz Edit src/sys/netinet/tcp_input.c Add delta 1.437.2.8 2012.07.08.12.12.34 bz Edit src/sys/netinet/tcp_output.c Add delta 1.184.2.4 2012.07.08.12.12.34 bz Edit src/sys/netinet/tcp_subr.c Add delta 1.383.2.4 2012.07.08.12.12.34 bz Edit src/sys/netinet/tcp_syncache.c Add delta 1.190.2.4 2012.07.08.12.12.34 bz Edit src/sys/netinet/tcp_timewait.c Add delta 1.316.2.4 2012.07.08.12.12.34 bz Works: cvsup date=2012.07.08.12.00.00 Edit src/sys/net/if_loop.c Add delta 1.143.2.1 2011.09.23.00.51.37 kensmith Edit src/sys/netinet/tcp_input.c Add delta 1.437.2.7 2012.06.05.11.28.57 bz Edit src/sys/netinet/tcp_output.c Add delta 1.184.2.3 2012.05.19.18.32.31 bz Edit src/sys/netinet/tcp_subr.c Add delta 1.383.2.3 2012.05.05.07.55.50 glebius Edit src/sys/netinet/tcp_syncache.c Add delta 1.190.2.3 2012.05.19.18.32.31 bz Edit src/sys/netinet/tcp_timewait.c Add delta 1.316.2.3 2012.05.19.18.32.31 bz >How-To-Repeat: Configure IPv6 (autoconf or manual) Configure ipsec via setkey and ipsec.conf add -6 <src ip6 addr> <dest ip6 addr> ah 0x123456 -A hmac-sha1 0x<long key>; add -6 <dest ip6 addr> <src ip6 addr> ah 0x123456 -A hmac-sha1 0x<long key>; spdadd <src ip6 addr> <dest ip6 addr> any -P out ipsec ah/transport//require ; spdadd <dest ip6 addr> <src ip6 addr> any -P in ipsec ah/transport//require; TCP fails. From broken host; tcpdump shows no output but does show input from other end. netstat -n show SYN_RECVD state for connetion. ICMP works This worked prior to July 8th 2012. >Fix: Unknown, but breakage is related to changes to checksum and offload processing in the above listed files MFC'd on July 8th by b...@freebsd.org >Release-Note: >Audit-Trail: >Unformatted: _______________________________________________ freebsd-bugs@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-bugs To unsubscribe, send any mail to "freebsd-bugs-unsubscr...@freebsd.org"