[MERGED] libosmo-netif[master]: SCTP: Don't enable sender_dry_event for SCTP, as it breaks L...

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Harald Welte gerrit-no-reply at lists.osmocom.org
Mon Apr 17 14:10:13 UTC 2017


Harald Welte has submitted this change and it was merged.

Change subject: SCTP: Don't enable sender_dry_event for SCTP, as it breaks Linux SCTP
......................................................................


SCTP: Don't enable sender_dry_event for SCTP, as it breaks Linux SCTP

Enabling sender_dry_event in SCTP_FLAGS breaks reliable delivery of DATA
chunks to the scoket user on Linux.  Let's avoid enabling that, while
still enabling various other interesting events.

See https://bugzilla.redhat.com/show_bug.cgi?id=1442784 for all related
details.

Change-Id: Ib616cd07a6044ca2ee7e05093b22df3369c62b56
---
M src/stream.c
1 file changed, 11 insertions(+), 2 deletions(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/src/stream.c b/src/stream.c
index ed73a62..add08b8 100644
--- a/src/stream.c
+++ b/src/stream.c
@@ -50,8 +50,17 @@
 	struct sctp_event_subscribe event;
 	int rc;
 
-	/* subscribe for all events */
-	memset((uint8_t *)&event, 1, sizeof(event));
+	/* subscribe for all relevant events */
+	memset((uint8_t *)&event, 0, sizeof(event));
+	event.sctp_data_io_event = 1;
+	event.sctp_association_event = 1;
+	event.sctp_address_event = 1;
+	event.sctp_address_event = 1;
+	event.sctp_send_failure_event = 1;
+	event.sctp_peer_error_event = 1;
+	event.sctp_shutdown_event = 1;
+	/* IMPORTANT: Do NOT enable sender_dry_event here, see
+	 * https://bugzilla.redhat.com/show_bug.cgi?id=1442784 */
 	rc = setsockopt(fd, IPPROTO_SCTP, SCTP_EVENTS,
 			&event, sizeof(event));
 

-- 
To view, visit https://gerrit.osmocom.org/2386
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ib616cd07a6044ca2ee7e05093b22df3369c62b56
Gerrit-PatchSet: 1
Gerrit-Project: libosmo-netif
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder



More information about the gerrit-log mailing list