Module Name:    src
Committed By:   martin
Date:           Mon Jul 30 07:55:58 UTC 2012

Modified Files:
        src/sys/compat/netbsd32 [netbsd-6]: netbsd32_socket.c

Log Message:
Pull up following revision(s) (requested by matt in ticket #452):
        sys/compat/netbsd32/netbsd32_socket.c: revision 1.40
Make SCM_RIGHTS work correctly.  (make sure to advance m if we've completely
dealt with, the next mbuf (if any) comes into play).


To generate a diff of this commit:
cvs rdiff -u -r1.39 -r1.39.2.1 src/sys/compat/netbsd32/netbsd32_socket.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/compat/netbsd32/netbsd32_socket.c
diff -u src/sys/compat/netbsd32/netbsd32_socket.c:1.39 src/sys/compat/netbsd32/netbsd32_socket.c:1.39.2.1
--- src/sys/compat/netbsd32/netbsd32_socket.c:1.39	Fri Jan 20 14:08:07 2012
+++ src/sys/compat/netbsd32/netbsd32_socket.c	Mon Jul 30 07:55:58 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: netbsd32_socket.c,v 1.39 2012/01/20 14:08:07 joerg Exp $	*/
+/*	$NetBSD: netbsd32_socket.c,v 1.39.2.1 2012/07/30 07:55:58 martin Exp $	*/
 
 /*
  * Copyright (c) 1998, 2001 Matthew R. Green
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_socket.c,v 1.39 2012/01/20 14:08:07 joerg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_socket.c,v 1.39.2.1 2012/07/30 07:55:58 martin Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -138,7 +138,7 @@ copyout32_msg_control(struct lwp *l, str
 
 	q = (char *)mp->msg_control;
 
-	for (m = control; m != NULL; m = m->m_next) {
+	for (m = control; len > 0 && m != NULL; m = m->m_next) {
 		error = copyout32_msg_control_mbuf(l, mp, &len, m, &q, &truncated);
 		if (truncated) {
 			m = control;
@@ -146,8 +146,6 @@ copyout32_msg_control(struct lwp *l, str
 		}
 		if (error)
 			break;
-		if (len <= 0)
-			break;
 	}
 
 	free_control_mbuf(l, control, m);

Reply via email to