Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/netinet6 Allow explicit binding to detached addresss.



details:   https://anonhg.NetBSD.org/src/rev/980f08dc7067
branches:  trunk
changeset: 347442:980f08dc7067
user:      roy <roy%NetBSD.org@localhost>
date:      Fri Aug 26 19:45:55 2016 +0000

description:
Allow explicit binding to detached addresss.
Fixes PR kern/51435.

diffstat:

 sys/netinet6/in6_pcb.c |  6 +++---
 sys/netinet6/in6_src.c |  7 +++----
 sys/netinet6/raw_ip6.c |  7 +++----
 3 files changed, 9 insertions(+), 11 deletions(-)

diffs (83 lines):

diff -r 1814a787722a -r 980f08dc7067 sys/netinet6/in6_pcb.c
--- a/sys/netinet6/in6_pcb.c    Fri Aug 26 18:07:47 2016 +0000
+++ b/sys/netinet6/in6_pcb.c    Fri Aug 26 19:45:55 2016 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: in6_pcb.c,v 1.148 2016/08/01 03:15:31 ozaki-r Exp $    */
+/*     $NetBSD: in6_pcb.c,v 1.149 2016/08/26 19:53:07 roy Exp $        */
 /*     $KAME: in6_pcb.c,v 1.84 2001/02/08 18:02:08 itojun Exp $        */
 
 /*
@@ -62,7 +62,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: in6_pcb.c,v 1.148 2016/08/01 03:15:31 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: in6_pcb.c,v 1.149 2016/08/26 19:53:07 roy Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -271,7 +271,7 @@
                 */
                if (ifa &&
                    ifatoia6(ifa)->ia6_flags &
-                   (IN6_IFF_ANYCAST|IN6_IFF_NOTREADY|IN6_IFF_DETACHED)) {
+                   (IN6_IFF_ANYCAST | IN6_IFF_NOTREADY)) {
                        error = EADDRNOTAVAIL;
                        goto out;
                }
diff -r 1814a787722a -r 980f08dc7067 sys/netinet6/in6_src.c
--- a/sys/netinet6/in6_src.c    Fri Aug 26 18:07:47 2016 +0000
+++ b/sys/netinet6/in6_src.c    Fri Aug 26 19:45:55 2016 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: in6_src.c,v 1.68 2016/08/23 19:39:57 roy Exp $ */
+/*     $NetBSD: in6_src.c,v 1.69 2016/08/26 19:45:55 roy Exp $ */
 /*     $KAME: in6_src.c,v 1.159 2005/10/19 01:40:32 t-momose Exp $     */
 
 /*
@@ -66,7 +66,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: in6_src.c,v 1.68 2016/08/23 19:39:57 roy Exp $");
+__KERNEL_RCSID(0, "$NetBSD: in6_src.c,v 1.69 2016/08/26 19:45:55 roy Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -251,8 +251,7 @@
                        goto exit;
                }
                ia6 = ifatoia6(ifa);
-               if (ia6->ia6_flags &
-                   (IN6_IFF_ANYCAST | IN6_IFF_NOTREADY | IN6_IFF_DETACHED)) {
+               if (ia6->ia6_flags & (IN6_IFF_ANYCAST | IN6_IFF_NOTREADY)) {
                        pserialize_read_exit(_s);
                        *errorp = EADDRNOTAVAIL;
                        goto exit;
diff -r 1814a787722a -r 980f08dc7067 sys/netinet6/raw_ip6.c
--- a/sys/netinet6/raw_ip6.c    Fri Aug 26 18:07:47 2016 +0000
+++ b/sys/netinet6/raw_ip6.c    Fri Aug 26 19:45:55 2016 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: raw_ip6.c,v 1.149 2016/08/01 03:15:31 ozaki-r Exp $    */
+/*     $NetBSD: raw_ip6.c,v 1.150 2016/08/26 19:53:07 roy Exp $        */
 /*     $KAME: raw_ip6.c,v 1.82 2001/07/23 18:57:56 jinmei Exp $        */
 
 /*
@@ -62,7 +62,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: raw_ip6.c,v 1.149 2016/08/01 03:15:31 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: raw_ip6.c,v 1.150 2016/08/26 19:53:07 roy Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ipsec.h"
@@ -700,8 +700,7 @@
                goto out;
        }
        if (ifa && (ifatoia6(ifa))->ia6_flags &
-           (IN6_IFF_ANYCAST|IN6_IFF_NOTREADY|
-            IN6_IFF_DETACHED|IN6_IFF_DEPRECATED)) {
+           (IN6_IFF_ANYCAST | IN6_IFF_NOTREADY)) {
                error = EADDRNOTAVAIL;
                goto out;
        }



Home | Main Index | Thread Index | Old Index