Garret: That was my bad.. I missed a file on the commit (sctp_structs.h).. Its now committed :-) As far as it being set.. of course it is.. basically the flag is used for large messages when doing PR-SCTP (something that is probably not wise.. but I had someone in Chile doing this).. and it highlighted a few problems in the way PR-SCTP with large messages worked... Still an issue that will cause a print out if you do mixed mode sending PR-SCTP and reliable SCTP.. I need to hunt that down.. its a flight size accounting problem that the audit code catches and fixes.. but I need to figure out what's going on with that :-D R On Mar 14, 2009, at 4:22 PM, Garrett Cooper wrote: > On Sat, Mar 14, 2009 at 12:54 PM, Garrett Cooper > <yanefbsd_at_gmail.com> wrote: >> On Sat, Mar 14, 2009 at 9:06 AM, Kostik Belousov >> <kostikbel_at_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) > _at__at_ -31,7 +31,7 _at__at_ > /* $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__ > _at__at_ -310,6 +310,8 _at__at_ > /* 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. > _at__at_ -445,6 +447,7 _at__at_ > uint8_t pr_sctp_on; > uint8_t sender_all_done; > uint8_t put_last_out; > + uint8_t discard_rest; > }; > > /* > ------------------------------ Randall Stewart 803-317-4952 (cell) 803-345-0391(direct)Received on Sat Mar 14 2009 - 22:17:52 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:44 UTC