summaryrefslogtreecommitdiffstats
path: root/recipes-core/openjdk/patches-openjdk-8/2001-jdk-comparison-between-pointer-and-integer.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-core/openjdk/patches-openjdk-8/2001-jdk-comparison-between-pointer-and-integer.patch')
-rw-r--r--recipes-core/openjdk/patches-openjdk-8/2001-jdk-comparison-between-pointer-and-integer.patch146
1 files changed, 146 insertions, 0 deletions
diff --git a/recipes-core/openjdk/patches-openjdk-8/2001-jdk-comparison-between-pointer-and-integer.patch b/recipes-core/openjdk/patches-openjdk-8/2001-jdk-comparison-between-pointer-and-integer.patch
new file mode 100644
index 0000000..38d3019
--- /dev/null
+++ b/recipes-core/openjdk/patches-openjdk-8/2001-jdk-comparison-between-pointer-and-integer.patch
@@ -0,0 +1,146 @@
1From 46ea1c28b53bf5fd2be03fa1d78936f6a1e70fc4 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <andre.draszik@jci.com>
3Date: Fri, 2 Mar 2018 11:13:08 +0000
4Subject: [PATCH 2001/2008] jdk: comparison between pointer and integer
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9In file included from jdk/src/share/native/java/net/net_util.c:28:0:
10jdk/src/share/native/java/net/net_util.c: In function 'NET_SockaddrToInetAddress':
11jdk/src/share/native/common/jni_util.h:302:17: warning: comparison between pointer and integer
12 if ((x) == NULL) { \
13 ^
14jdk/src/share/native/java/net/net_util.c:225:13: note: in expansion of macro 'CHECK_NULL_RETURN'
15 CHECK_NULL_RETURN(ret, NULL);
16 ^~~~~~~~~~~~~~~~~
17
18Backport a patch to fix this.
19
20Upstream-Status: Backport [http://hg.openjdk.java.net/jdk9/jdk9/jdk/rev/90c643593ed7]
21
22Signed-off-by: André Draszik <andre.draszik@jci.com>
23Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
24---
25 src/share/native/java/net/net_util.c | 15 +++++++--------
26 src/share/native/java/net/net_util.h | 8 ++++----
27 src/solaris/native/java/net/Inet6AddressImpl.c | 4 ++--
28 3 files changed, 13 insertions(+), 14 deletions(-)
29
30diff --git a/jdk/src/share/native/java/net/net_util.c b/jdk/src/share/native/java/net/net_util.c
31index b1b8223a6..2eee6261a 100644
32--- a/jdk/src/share/native/java/net/net_util.c
33+++ b/jdk/src/share/native/java/net/net_util.c
34@@ -108,7 +108,7 @@ jobject getInet6Address_scopeifname(JNIEnv *env, jobject iaObj) {
35 return (*env)->GetObjectField(env, holder, ia6_scopeifnameID);
36 }
37
38-int setInet6Address_scopeifname(JNIEnv *env, jobject iaObj, jobject scopeifname) {
39+jboolean setInet6Address_scopeifname(JNIEnv *env, jobject iaObj, jobject scopeifname) {
40 jobject holder = (*env)->GetObjectField(env, iaObj, ia6_holder6ID);
41 CHECK_NULL_RETURN(holder, JNI_FALSE);
42 (*env)->SetObjectField(env, holder, ia6_scopeifnameID, scopeifname);
43@@ -127,7 +127,7 @@ int getInet6Address_scopeid(JNIEnv *env, jobject iaObj) {
44 return (*env)->GetIntField(env, holder, ia6_scopeidID);
45 }
46
47-int setInet6Address_scopeid(JNIEnv *env, jobject iaObj, int scopeid) {
48+jboolean setInet6Address_scopeid(JNIEnv *env, jobject iaObj, int scopeid) {
49 jobject holder = (*env)->GetObjectField(env, iaObj, ia6_holder6ID);
50 CHECK_NULL_RETURN(holder, JNI_FALSE);
51 (*env)->SetIntField(env, holder, ia6_scopeidID, scopeid);
52@@ -138,7 +138,7 @@ int setInet6Address_scopeid(JNIEnv *env, jobject iaObj, int scopeid) {
53 }
54
55
56-int getInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *dest) {
57+jboolean getInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *dest) {
58 jobject holder, addr;
59 jbyteArray barr;
60
61@@ -150,7 +150,7 @@ int getInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *dest) {
62 return JNI_TRUE;
63 }
64
65-int setInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *address) {
66+jboolean setInet6Address_ipaddress(JNIEnv *env, jobject iaObj, char *address) {
67 jobject holder;
68 jbyteArray addr;
69
70@@ -208,7 +208,6 @@ NET_SockaddrToInetAddress(JNIEnv *env, struct sockaddr *him, int *port) {
71 jobject iaObj;
72 #ifdef AF_INET6
73 if (him->sa_family == AF_INET6) {
74- jbyteArray ipaddress;
75 #ifdef WIN32
76 struct SOCKADDR_IN6 *him6 = (struct SOCKADDR_IN6 *)him;
77 #else
78@@ -226,11 +225,12 @@ NET_SockaddrToInetAddress(JNIEnv *env, struct sockaddr *him, int *port) {
79 JNU_CHECK_EXCEPTION_RETURN(env, NULL);
80 } else {
81 jint scope;
82- int ret;
83+ jboolean ret;
84 iaObj = (*env)->NewObject(env, ia6_class, ia6_ctrID);
85 CHECK_NULL_RETURN(iaObj, NULL);
86 ret = setInet6Address_ipaddress(env, iaObj, (char *)&(him6->sin6_addr));
87- CHECK_NULL_RETURN(ret, NULL);
88+ if (ret == JNI_FALSE)
89+ return NULL;
90 setInetAddress_family(env, iaObj, IPv6);
91 JNU_CHECK_EXCEPTION_RETURN(env, NULL);
92 scope = getScopeID(him);
93@@ -282,7 +282,6 @@ NET_SockaddrEqualsInetAddress(JNIEnv *env, struct sockaddr *him, jobject iaObj)
94 return JNI_FALSE;
95 }
96 } else {
97- jbyteArray ipaddress;
98 jbyte caddrCur[16];
99 int scope;
100
101diff --git a/jdk/src/share/native/java/net/net_util.h b/jdk/src/share/native/java/net/net_util.h
102index c8a5e68c4..176ca586e 100644
103--- a/jdk/src/share/native/java/net/net_util.h
104+++ b/jdk/src/share/native/java/net/net_util.h
105@@ -64,12 +64,12 @@ JNIEXPORT void JNICALL initInetAddressIDs(JNIEnv *env);
106 * get_ methods that return objects return NULL on error.
107 */
108 extern jobject getInet6Address_scopeifname(JNIEnv *env, jobject ia6Obj);
109-extern int setInet6Address_scopeifname(JNIEnv *env, jobject ia6Obj, jobject scopeifname);
110+extern jboolean setInet6Address_scopeifname(JNIEnv *env, jobject ia6Obj, jobject scopeifname);
111 extern int getInet6Address_scopeid_set(JNIEnv *env, jobject ia6Obj);
112 extern int getInet6Address_scopeid(JNIEnv *env, jobject ia6Obj);
113-extern int setInet6Address_scopeid(JNIEnv *env, jobject ia6Obj, int scopeid);
114-extern int getInet6Address_ipaddress(JNIEnv *env, jobject ia6Obj, char *dest);
115-extern int setInet6Address_ipaddress(JNIEnv *env, jobject ia6Obj, char *address);
116+extern jboolean setInet6Address_scopeid(JNIEnv *env, jobject ia6Obj, int scopeid);
117+extern jboolean getInet6Address_ipaddress(JNIEnv *env, jobject ia6Obj, char *dest);
118+extern jboolean setInet6Address_ipaddress(JNIEnv *env, jobject ia6Obj, char *address);
119
120 extern void setInetAddress_addr(JNIEnv *env, jobject iaObj, int address);
121 extern void setInetAddress_family(JNIEnv *env, jobject iaObj, int family);
122diff --git a/jdk/src/solaris/native/java/net/Inet6AddressImpl.c b/jdk/src/solaris/native/java/net/Inet6AddressImpl.c
123index 0a51a365f..dcc348cf1 100644
124--- a/jdk/src/solaris/native/java/net/Inet6AddressImpl.c
125+++ b/jdk/src/solaris/native/java/net/Inet6AddressImpl.c
126@@ -392,7 +392,7 @@ Java_java_net_Inet6AddressImpl_lookupAllHostAddr(JNIEnv *env, jobject this,
127 }
128
129 while (iterator != NULL) {
130- int ret1;
131+ jboolean ret1;
132 if (iterator->ai_family == AF_INET) {
133 jobject iaObj = (*env)->NewObject(env, ia4_class, ia4_ctrID);
134 if (IS_NULL(iaObj)) {
135@@ -416,7 +416,7 @@ Java_java_net_Inet6AddressImpl_lookupAllHostAddr(JNIEnv *env, jobject this,
136 goto cleanupAndReturn;
137 }
138 ret1 = setInet6Address_ipaddress(env, iaObj, (char *)&(((struct sockaddr_in6*)iterator->ai_addr)->sin6_addr));
139- if (!ret1) {
140+ if (ret1 == JNI_FALSE) {
141 ret = NULL;
142 goto cleanupAndReturn;
143 }
144--
1452.24.1
146