On Sat, Mar 14, 2009 at 12:54 PM, Garrett Cooper <yanef...@gmail.com> wrote: > On Sat, Mar 14, 2009 at 9:06 AM, Kostik Belousov <kostik...@gmail.com> wrote: >> On Sat, Mar 14, 2009 at 01:42:14PM +0000, Randall Stewart wrote: >>> Author: rrs >>> Date: Sat Mar 14 13:42:13 2009 >>> New Revision: 189790 >>> URL: http://svn.freebsd.org/changeset/base/189790 >>> >>> Log: >>> Fixes several PR-SCTP releated bugs. >>> - When sending large PR-SCTP messages over a >>> lossy link we would incorrectly calculate the fwd-tsn >>> - When receiving large multipart pr-sctp packets we would >>> incorrectly send back a SACK that would renege improperly >>> on already received packets thus causing unneeded retransmissions. >> >> With this commit, I get >> /usr/home/kostik/work/build/bsd/DEV/src/sys/netinet/sctp_indata.c: In >> function 'sctp_express_handle_sack': >> /usr/home/kostik/work/build/bsd/DEV/src/sys/netinet/sctp_indata.c:4772: >> error: 'struct sctp_data_chunkrec' has no member named 'fwd_tsn_cnt' >> /usr/home/kostik/work/build/bsd/DEV/src/sys/netinet/sctp_indata.c:4773: >> error: 'struct sctp_data_chunkrec' has no member named 'fwd_tsn_cnt' >> /usr/home/kostik/work/build/bsd/DEV/src/sys/netinet/sctp_indata.c:4775: >> error: 'struct sctp_data_chunkrec' has no member named 'fwd_tsn_cnt' > > As do I. > -Garrett
The attached patch fixes all SCTP related compile errors, but I'm a bit worried about whether or not discard_rest is set anywhere in the code, or the entire data struct is properly zero'ed out (haven't inspected it yet): Thanks, -Garrett Index: sys/netinet/sctp_structs.h =================================================================== --- sys/netinet/sctp_structs.h (revision 189829) +++ sys/netinet/sctp_structs.h (working copy) @@ -31,7 +31,7 @@ /* $KAME: sctp_structs.h,v 1.13 2005/03/06 16:04:18 itojun Exp $ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/sys/netinet/sctp_structs.h,v 1.30 2009/02/20 15:03:54 rrs Exp $"); #ifndef __sctp_structs_h__ #define __sctp_structs_h__ @@ -310,6 +310,8 @@ /* ECN Nonce: Nonce Value for this chunk */ uint8_t ect_nonce; + uint8_t fwd_tsn_cnt; + /* * part of the Highest sacked algorithm to be able to stroke counts * on ones that are FR'd. @@ -445,6 +447,7 @@ uint8_t pr_sctp_on; uint8_t sender_all_done; uint8_t put_last_out; + uint8_t discard_rest; }; /* _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"