svn commit: r231487 - stable/8/sys/netinet

Michael Tuexen tuexen at FreeBSD.org
Sat Feb 11 00:48:23 UTC 2012


Author: tuexen
Date: Sat Feb 11 00:48:22 2012
New Revision: 231487
URL: http://svn.freebsd.org/changeset/base/231487

Log:
  MFC r228391:
  Fix a bug reported by Irene Ruengeler which resulted in not sending
  out HEARTBEATs when requested by the user. The HEARTBEATs were only
  queued, but not actually sent out.

Modified:
  stable/8/sys/netinet/sctp_constants.h
  stable/8/sys/netinet/sctp_usrreq.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/boot/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/e1000/   (props changed)

Modified: stable/8/sys/netinet/sctp_constants.h
==============================================================================
--- stable/8/sys/netinet/sctp_constants.h	Sat Feb 11 00:46:06 2012	(r231486)
+++ stable/8/sys/netinet/sctp_constants.h	Sat Feb 11 00:48:22 2012	(r231487)
@@ -391,6 +391,8 @@ __FBSDID("$FreeBSD$");
 #define SCTP_OUTPUT_FROM_COOKIE_ACK     14
 #define SCTP_OUTPUT_FROM_DRAIN          15
 #define SCTP_OUTPUT_FROM_CLOSING        16
+#define SCTP_OUTPUT_FROM_SOCKOPT        17
+
 /* SCTP chunk types are moved sctp.h for application (NAT, FW) use */
 
 /* align to 32-bit sizes */

Modified: stable/8/sys/netinet/sctp_usrreq.c
==============================================================================
--- stable/8/sys/netinet/sctp_usrreq.c	Sat Feb 11 00:46:06 2012	(r231486)
+++ stable/8/sys/netinet/sctp_usrreq.c	Sat Feb 11 00:48:22 2012	(r231487)
@@ -4695,6 +4695,7 @@ sctp_setopt(struct socket *so, int optna
 					if (paddrp->spp_flags & SPP_HB_DEMAND) {
 						/* on demand HB */
 						sctp_send_hb(stcb, net, SCTP_SO_LOCKED);
+						sctp_chunk_output(inp, stcb, SCTP_OUTPUT_FROM_SOCKOPT, SCTP_SO_LOCKED);
 						sctp_timer_start(SCTP_TIMER_TYPE_HEARTBEAT, inp, stcb, net);
 					}
 					if ((paddrp->spp_flags & SPP_PMTUD_DISABLE) && (paddrp->spp_pathmtu >= SCTP_SMALLEST_PMTU)) {


More information about the svn-src-all mailing list