svn commit: r360662 - head/sys/netinet
Michael Tuexen
tuexen at FreeBSD.org
Tue May 5 17:52:45 UTC 2020
Author: tuexen
Date: Tue May 5 17:52:44 2020
New Revision: 360662
URL: https://svnweb.freebsd.org/changeset/base/360662
Log:
Fix the computation of the numbers of entries of the mapping array to
look at when generating a SACK. This was wrong in case of sequence
numbers wrap arounds.
Thanks to Gwenael FOURRE for reporting the issue for the userland stack:
https://github.com/sctplab/usrsctp/issues/462
MFC after: 3 days
Modified:
head/sys/netinet/sctp_output.c
Modified: head/sys/netinet/sctp_output.c
==============================================================================
--- head/sys/netinet/sctp_output.c Tue May 5 17:50:27 2020 (r360661)
+++ head/sys/netinet/sctp_output.c Tue May 5 17:52:44 2020 (r360662)
@@ -10713,7 +10713,7 @@ sctp_send_sack(struct sctp_tcb *stcb, int so_locked
if (highest_tsn > asoc->mapping_array_base_tsn) {
siz = (((highest_tsn - asoc->mapping_array_base_tsn) + 1) + 7) / 8;
} else {
- siz = (((MAX_TSN - highest_tsn) + 1) + highest_tsn + 7) / 8;
+ siz = (((MAX_TSN - asoc->mapping_array_base_tsn) + 1) + highest_tsn + 7) / 8;
}
} else {
sack = NULL;
More information about the svn-src-all
mailing list