From 1ae616bdd1308f9afe4e0cf74f25676d253ecb2e Mon Sep 17 00:00:00 2001 From: Randall Stewart Date: Thu, 12 Feb 2009 18:50:27 +0000 Subject: MFC of 185694 - The IETF hack session: Code from the hack-session known as the IETF (and a bit of debugging afterwards): - Fix protection code for notification generation. - Decouple associd from vtag - Allow vtags to have less strigent requirements in non-uniqueness. o don't pre-hash them when you issue one in a cookie. o Allow duplicates and use addresses and ports to discriminate amongst the duplicates during lookup. - Add support for the NAT draft draft-ietf-behave-sctpnat-00, this is still experimental and needs more extensive testing with the Jason Butt ipfw changes. - Support for the SENDER_DRY event to get DTLS in OpenSSL working with a set of patches from Michael Tuexen (hopefully heading to OpenSSL soon). - Update the support of SCTP-AUTH by Peter Lei. - Use macros for refcounting. - Fix MTU for UDP encapsulation. - Fix reporting back of unsent data. - Update assoc send counter handling to be consistent with endpoint sent counter. - Fix a bug in PR-SCTP. - Fix so we only send another FWD-TSN when a SACK arrives IF and only if the adv-peer-ack point progressed. However we still make sure a timer is running if we do have an adv_peer_ack point. - Fix PR-SCTP bug where chunks were retransmitted if they are sent unreliable but not abandoned yet. With the help of: Michael Teuxen and Peter Lei :-) --- sys/netinet6/sctp6_usrreq.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'sys/netinet6/sctp6_usrreq.c') diff --git a/sys/netinet6/sctp6_usrreq.c b/sys/netinet6/sctp6_usrreq.c index d021dfc2bcc2..c6fc3cfd17d8 100644 --- a/sys/netinet6/sctp6_usrreq.c +++ b/sys/netinet6/sctp6_usrreq.c @@ -286,6 +286,9 @@ sctp6_notify_mbuf(struct sctp_inpcb *inp, struct icmp6_hdr *icmp6, /* Adjust destination size limit */ if (net->mtu > nxtsz) { net->mtu = nxtsz; + if (net->port) { + net->mtu -= sizeof(struct udphdr); + } } /* now what about the ep? */ if (stcb->asoc.smallest_mtu > nxtsz) { -- cgit v1.3