svn commit: r319395 - stable/11/sys/netinet

Michael Tuexen tuexen at FreeBSD.org
Thu Jun 1 08:12:45 UTC 2017


Author: tuexen
Date: Thu Jun  1 08:12:44 2017
New Revision: 319395
URL: https://svnweb.freebsd.org/changeset/base/319395

Log:
  MFC r313031:
  
  Take the SCTP common header into account when computing the
  space available for chunks. This unbreaks the handling of
  ICMPV6 packets indicating "packet too big". It just worked
  for IPv4 since we are overbooking for IPv4.

Modified:
  stable/11/sys/netinet/sctp_usrreq.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/netinet/sctp_usrreq.c
==============================================================================
--- stable/11/sys/netinet/sctp_usrreq.c	Thu Jun  1 08:09:54 2017	(r319394)
+++ stable/11/sys/netinet/sctp_usrreq.c	Thu Jun  1 08:12:44 2017	(r319395)
@@ -108,7 +108,7 @@ sctp_pathmtu_adjustment(struct sctp_tcb *stcb, uint16_
 	/* Adjust that too */
 	stcb->asoc.smallest_mtu = nxtsz;
 	/* now off to subtract IP_DF flag if needed */
-	overhead = IP_HDR_SIZE;
+	overhead = IP_HDR_SIZE + sizeof(struct sctphdr);
 	if (sctp_auth_is_required_chunk(SCTP_DATA, stcb->asoc.peer_auth_chunks)) {
 		overhead += sctp_get_auth_chunk_len(stcb->asoc.peer_hmac_id);
 	}


More information about the svn-src-all mailing list