summaryrefslogtreecommitdiff
path: root/www/firefox36/files/patch-nsprpub-pr-src-pthrads-ptio.c
diff options
context:
space:
mode:
Diffstat (limited to 'www/firefox36/files/patch-nsprpub-pr-src-pthrads-ptio.c')
-rw-r--r--www/firefox36/files/patch-nsprpub-pr-src-pthrads-ptio.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/www/firefox36/files/patch-nsprpub-pr-src-pthrads-ptio.c b/www/firefox36/files/patch-nsprpub-pr-src-pthrads-ptio.c
new file mode 100644
index 000000000000..4a965d4c7440
--- /dev/null
+++ b/www/firefox36/files/patch-nsprpub-pr-src-pthrads-ptio.c
@@ -0,0 +1,22 @@
+Index: nsprpub/pr/src/pthreads/ptio.c
+diff -u nsprpub/pr/src/pthreads/ptio.c.orig nsprpub/pr/src/pthreads/ptio.c
+--- nsprpub/pr/src/pthreads/ptio.c.orig Fri Apr 12 03:14:39 2002
++++ nsprpub/pr/src/pthreads/ptio.c Tue Jul 30 18:52:11 2002
+@@ -3414,6 +3414,17 @@
+ if (osfd == -1) pt_MapError(_PR_MD_MAP_SOCKET_ERROR, errno);
+ else
+ {
++#if (defined(_PR_INET6_PROBE) || defined(_PR_INET6)) && \
++ defined(__FreeBSD__) && defined(IPV6_V6ONLY)
++ if (domain == PR_AF_INET6) {
++ int opt = 0;
++ if (setsockopt(osfd, IPPROTO_IPV6, IPV6_V6ONLY,
++ &opt, sizeof(opt))) {
++ close(osfd);
++ return NULL;
++ }
++ }
++#endif
+ fd = pt_SetMethods(osfd, ftype, PR_FALSE, PR_FALSE);
+ if (fd == NULL) close(osfd);
+ }