svn commit: r366324 - stable/12/sys/netinet
Michael Tuexen
tuexen at FreeBSD.org
Thu Oct 1 16:23:35 UTC 2020
Author: tuexen
Date: Thu Oct 1 16:23:35 2020
New Revision: 366324
URL: https://svnweb.freebsd.org/changeset/base/366324
Log:
MFC r366198:
Improve the handling of receiving unordered and unreliable user
messages using DATA chunks. Don't use fsn_included when not being
sure that it is set to an appropriate value. If the default is
used, which is -1, this can result in SCTP associaitons not
making any user visible progress.
Thanks to Yutaka Takeda for reporting this issue for the the
userland stack in https://github.com/pion/sctp/issues/138.
Modified:
stable/12/sys/netinet/sctp_indata.c
Directory Properties:
stable/12/ (props changed)
Modified: stable/12/sys/netinet/sctp_indata.c
==============================================================================
--- stable/12/sys/netinet/sctp_indata.c Thu Oct 1 16:22:34 2020 (r366323)
+++ stable/12/sys/netinet/sctp_indata.c Thu Oct 1 16:23:35 2020 (r366324)
@@ -5430,7 +5430,9 @@ sctp_flush_reassm_for_str_seq(struct sctp_tcb *stcb,
* it can be delivered... But for now we just dump everything on the
* queue.
*/
- if (!asoc->idata_supported && !ordered && SCTP_TSN_GT(control->fsn_included, cumtsn)) {
+ if (!asoc->idata_supported && !ordered &&
+ control->first_frag_seen &&
+ SCTP_TSN_GT(control->fsn_included, cumtsn)) {
return;
}
TAILQ_FOREACH_SAFE(chk, &control->reasm, sctp_next, nchk) {
More information about the svn-src-stable-12
mailing list