summaryrefslogtreecommitdiff
path: root/legacy/openjdk7/icedtea-jdk-fix-ipv6-init.patch
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2019-07-23 19:11:15 +0000
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2019-07-23 19:11:15 +0000
commit0273b68c9ce66484512d810a98e8a4551e889e1e (patch)
treee35278030dc7b5b246138bb17fe728ab1f4190f7 /legacy/openjdk7/icedtea-jdk-fix-ipv6-init.patch
parent2a532cb81b163020b1b3348e227b9108a4e5be5f (diff)
downloadpackages-0273b68c9ce66484512d810a98e8a4551e889e1e.tar.gz
packages-0273b68c9ce66484512d810a98e8a4551e889e1e.tar.bz2
packages-0273b68c9ce66484512d810a98e8a4551e889e1e.tar.xz
packages-0273b68c9ce66484512d810a98e8a4551e889e1e.zip
user/openjdk7: move to legacy, only useful for BSing jdk8
Diffstat (limited to 'legacy/openjdk7/icedtea-jdk-fix-ipv6-init.patch')
-rw-r--r--legacy/openjdk7/icedtea-jdk-fix-ipv6-init.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/legacy/openjdk7/icedtea-jdk-fix-ipv6-init.patch b/legacy/openjdk7/icedtea-jdk-fix-ipv6-init.patch
new file mode 100644
index 000000000..11f3bf6dd
--- /dev/null
+++ b/legacy/openjdk7/icedtea-jdk-fix-ipv6-init.patch
@@ -0,0 +1,42 @@
+--- openjdk/jdk/src/solaris/native/java/net/net_util_md.c.orig
++++ openjdk/jdk/src/solaris/native/java/net/net_util_md.c
+@@ -561,7 +561,7 @@
+
+ static struct localinterface *localifs = 0;
+ static int localifsSize = 0; /* size of array */
+-static int nifs = 0; /* number of entries used in array */
++static int nifs = -1; /* number of entries used in array */
+
+ /* not thread safe: make sure called once from one thread */
+
+@@ -573,6 +573,10 @@
+ int index, x1, x2, x3;
+ unsigned int u0,u1,u2,u3,u4,u5,u6,u7,u8,u9,ua,ub,uc,ud,ue,uf;
+
++ if (nifs >= 0)
++ return ;
++ nifs = 0;
++
+ if ((f = fopen("/proc/net/if_inet6", "r")) == NULL) {
+ return ;
+ }
+@@ -601,7 +605,7 @@
+ localifs = (struct localinterface *) realloc (
+ localifs, sizeof (struct localinterface)* (localifsSize+5));
+ if (localifs == 0) {
+- nifs = 0;
++ nifs = -1;
+ fclose (f);
+ return;
+ }
+@@ -624,9 +628,7 @@
+ static int getLocalScopeID (char *addr) {
+ struct localinterface *lif;
+ int i;
+- if (localifs == 0) {
+- initLocalIfs();
+- }
++ initLocalIfs();
+ for (i=0, lif=localifs; i<nifs; i++, lif++) {
+ if (memcmp (addr, lif->localaddr, 16) == 0) {
+ return lif->index;