svn commit: r294911 - stable/10/lib/libc/net

Michael Tuexen tuexen at FreeBSD.org
Wed Jan 27 14:01:22 UTC 2016


Author: tuexen
Date: Wed Jan 27 14:01:21 2016
New Revision: 294911
URL: https://svnweb.freebsd.org/changeset/base/294911

Log:
  MFC r294694:
  sctp_sendx() needs to provide the assoc_id back.

Modified:
  stable/10/lib/libc/net/sctp_sys_calls.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/lib/libc/net/sctp_sys_calls.c
==============================================================================
--- stable/10/lib/libc/net/sctp_sys_calls.c	Wed Jan 27 13:59:27 2016	(r294910)
+++ stable/10/lib/libc/net/sctp_sys_calls.c	Wed Jan 27 14:01:21 2016	(r294911)
@@ -700,14 +700,19 @@ sctp_sendx(int sd, const void *msg, size
 #ifdef SYS_sctp_generic_sendmsg
 	if (addrcnt == 1) {
 		socklen_t l;
+		ssize_t ret;
 
 		/*
 		 * Quick way, we don't need to do a connectx so lets use the
 		 * syscall directly.
 		 */
 		l = addrs->sa_len;
-		return (syscall(SYS_sctp_generic_sendmsg, sd,
-		    msg, msg_len, addrs, l, sinfo, flags));
+		ret = syscall(SYS_sctp_generic_sendmsg, sd,
+		    msg, msg_len, addrs, l, sinfo, flags);
+		if ((ret >= 0) && (sinfo != NULL)) {
+			sinfo->sinfo_assoc_id = sctp_getassocid(sd, addrs);
+		}
+		return (ret);
 	}
 #endif
 


More information about the svn-src-all mailing list