svn commit: r304837 - head/sys/netinet
Michael Tuexen
tuexen at FreeBSD.org
Fri Aug 26 07:49:24 UTC 2016
Author: tuexen
Date: Fri Aug 26 07:49:23 2016
New Revision: 304837
URL: https://svnweb.freebsd.org/changeset/base/304837
Log:
Fix a bug, where no SACK is sent when receiving a FORWARD-TSN or
I-FORWARD-TSN chunk before any DATA or I-DATA chunk.
Thanks to Julian Cordes for finding this problem and prividing
packetdrill scripts to reporduce the issue.
MFC after: 3 days
Modified:
head/sys/netinet/sctp_input.c
Modified: head/sys/netinet/sctp_input.c
==============================================================================
--- head/sys/netinet/sctp_input.c Fri Aug 26 06:19:12 2016 (r304836)
+++ head/sys/netinet/sctp_input.c Fri Aug 26 07:49:23 2016 (r304837)
@@ -5515,6 +5515,11 @@ process_control_chunks:
*offset = length;
return (NULL);
}
+ /*
+ * For sending a SACK this looks like DATA
+ * chunks.
+ */
+ stcb->asoc.last_data_chunk_from = stcb->asoc.last_control_chunk_from;
sctp_handle_forward_tsn(stcb,
(struct sctp_forward_tsn_chunk *)ch, &abort_flag, m, *offset);
if (abort_flag) {
More information about the svn-src-head
mailing list