summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGrant Limberg <glimberg@gmail.com>2015-09-26 14:10:45 -0700
committerGrant Limberg <glimberg@gmail.com>2015-09-26 14:10:45 -0700
commit75a191a8564030f4d5e99aca76b980e2d69abd20 (patch)
tree391abf0a659699fa9ca8002b3015fb569763e4ed
parent7c3be2b5c152e8631237c1050e0c90ad37dfcb1d (diff)
downloadinfinitytier-75a191a8564030f4d5e99aca76b980e2d69abd20.tar.gz
infinitytier-75a191a8564030f4d5e99aca76b980e2d69abd20.zip
don't create an InetSocketAddress on local address if it's equal to ZT_SOCKADDR_NULL
-rw-r--r--java/jni/com_zerotierone_sdk_Node.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/java/jni/com_zerotierone_sdk_Node.cpp b/java/jni/com_zerotierone_sdk_Node.cpp
index e1b69d1e..e6042649 100644
--- a/java/jni/com_zerotierone_sdk_Node.cpp
+++ b/java/jni/com_zerotierone_sdk_Node.cpp
@@ -469,7 +469,12 @@ namespace {
return -2;
}
- jobject localAddressObj = newInetSocketAddress(env, *localAddress);
+ jobject localAddressObj = NULL;
+ if(memcmp(localAddress, &ZT_SOCKADDR_NULL, sizeof(sockaddr_storage)) != 0)
+ {
+ localAddressObj = newInetSocketAddress(env, *localAddress);
+ }
+
jobject remoteAddressObj = newInetSocketAddress(env, *remoteAddress);
jbyteArray bufferObj = env->NewByteArray(bufferSize);
env->SetByteArrayRegion(bufferObj, 0, bufferSize, (jbyte*)buffer);