Module Name:    src
Committed By:   seanb
Date:           Fri Dec  5 18:45:37 UTC 2014

Modified Files:
        src/sys/netinet6: udp6_output.c

Log Message:
- Fix comment which was no longer accurate after previous change to move
  from in_pcbconnect -> in6_pcbsetport.


To generate a diff of this commit:
cvs rdiff -u -r1.46 -r1.47 src/sys/netinet6/udp6_output.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/netinet6/udp6_output.c
diff -u src/sys/netinet6/udp6_output.c:1.46 src/sys/netinet6/udp6_output.c:1.47
--- src/sys/netinet6/udp6_output.c:1.46	Fri Nov 14 17:34:23 2014
+++ src/sys/netinet6/udp6_output.c	Fri Dec  5 18:45:37 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: udp6_output.c,v 1.46 2014/11/14 17:34:23 maxv Exp $	*/
+/*	$NetBSD: udp6_output.c,v 1.47 2014/12/05 18:45:37 seanb Exp $	*/
 /*	$KAME: udp6_output.c,v 1.43 2001/10/15 09:19:52 itojun Exp $	*/
 
 /*
@@ -62,7 +62,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: udp6_output.c,v 1.46 2014/11/14 17:34:23 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udp6_output.c,v 1.47 2014/12/05 18:45:37 seanb Exp $");
 
 #include "opt_inet.h"
 
@@ -177,11 +177,11 @@ udp6_output(struct in6pcb * const in6p, 
 
 	if (sin6) {
 		/*
-		 * IPv4 version of udp_output calls in_pcbconnect in this case,
-		 * which needs splnet and affects performance.
-		 * We have to do this as well, since in6_pcbsetport needs to
-		 * know the foreign address for some of the algorithms that
-		 * it employs.
+		 * Slightly different than v4 version in that we call
+		 * in6_selectsrc and in6_pcbsetport to fill in the local
+		 * address and port rather than in_pcbconnect. in_pcbconnect
+		 * sets in6p_faddr which causes EISCONN below to be hit on
+		 * subsequent sendto.
 		 */
 		if (sin6->sin6_port == 0) {
 			error = EADDRNOTAVAIL;

Reply via email to