Bug 936320: Update NSPR to NSPR_4_10_3_BETA3. r=gdestuynder.
authorWan-Teh Chang <wtc@google.com>
Fri, 24 Jan 2014 08:33:02 -0800
changeset 165085 75c140ce2a5dce171d9f3931f10bdf8ab2cb2c67
parent 165084 0e5e55ddf94ee7801e02875e7ccc778a4fec8dcd
child 165086 14a1340ab2ff7289a6ba37ec09dd869e7680afdc
push id26074
push userryanvm@gmail.com
push dateFri, 24 Jan 2014 21:51:09 +0000
treeherdermozilla-central@fdc82b2c5584 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersgdestuynder
bugs936320
milestone29.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 936320: Update NSPR to NSPR_4_10_3_BETA3. r=gdestuynder.
nsprpub/TAG-INFO
nsprpub/config/prdepend.h
nsprpub/pr/src/pthreads/ptio.c
--- a/nsprpub/TAG-INFO
+++ b/nsprpub/TAG-INFO
@@ -1,1 +1,1 @@
-NSPR_4_10_3_BETA2
+NSPR_4_10_3_BETA3
--- a/nsprpub/config/prdepend.h
+++ b/nsprpub/config/prdepend.h
@@ -5,9 +5,8 @@
 
 /*
  * A dummy header file that is a dependency for all the object files.
  * Used to force a full recompilation of NSPR in Mozilla's Tinderbox
  * depend builds.  See comments in rules.mk.
  */
 
 #error "Do not include this header file."
-
--- a/nsprpub/pr/src/pthreads/ptio.c
+++ b/nsprpub/pr/src/pthreads/ptio.c
@@ -3395,42 +3395,46 @@ failed:
 }  /* PR_AllocFileDesc */
 
 #if !defined(_PR_INET6) || defined(_PR_INET6_PROBE)
 PR_EXTERN(PRStatus) _pr_push_ipv6toipv4_layer(PRFileDesc *fd);
 #if defined(_PR_INET6_PROBE)
 extern PRBool _pr_ipv6_is_present(void);
 PR_IMPLEMENT(PRBool) _pr_test_ipv6_socket()
 {
-PRInt32 osfd;
-
 #if defined(DARWIN)
     /*
      * Disable IPv6 if Darwin version is less than 7.0.0 (OS X 10.3).  IPv6 on
      * lesser versions is not ready for general use (see bug 222031).
      */
     {
         struct utsname u;
         if (uname(&u) != 0 || atoi(u.release) < 7)
             return PR_FALSE;
     }
 #endif
 
+#if defined(LINUX)
+    /* If /proc/net/if_inet6 exists, the Linux kernel supports IPv6. */
+    int rv = access("/proc/net/if_inet6", F_OK);
+    return (rv == 0);
+#else
     /*
      * HP-UX only: HP-UX IPv6 Porting Guide (dated February 2001)
      * suggests that we call open("/dev/ip6", O_RDWR) to determine
      * whether IPv6 APIs and the IPv6 stack are on the system.
      * Our portable test below seems to work fine, so I am using it.
      */
-    osfd = socket(AF_INET6, SOCK_STREAM, 0);
+    PRInt32 osfd = socket(AF_INET6, SOCK_STREAM, 0);
     if (osfd != -1) {
         close(osfd);
         return PR_TRUE;
     }
     return PR_FALSE;
+#endif
 }
 #endif	/* _PR_INET6_PROBE */
 #endif
 
 PR_IMPLEMENT(PRFileDesc*) PR_Socket(PRInt32 domain, PRInt32 type, PRInt32 proto)
 {
     PRIntn osfd;
     PRDescType ftype;