svn commit: r364579 - stable/12/sys/netinet

Michael Tuexen tuexen at FreeBSD.org
Sun Aug 23 22:39:07 UTC 2020


Author: tuexen
Date: Sun Aug 23 22:39:06 2020
New Revision: 364579
URL: https://svnweb.freebsd.org/changeset/base/364579

Log:
  MFC r360662:
  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

Modified:
  stable/12/sys/netinet/sctp_output.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/netinet/sctp_output.c
==============================================================================
--- stable/12/sys/netinet/sctp_output.c	Sun Aug 23 22:35:52 2020	(r364578)
+++ stable/12/sys/netinet/sctp_output.c	Sun Aug 23 22:39:06 2020	(r364579)
@@ -10719,7 +10719,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-stable-12 mailing list