From 3e6a22c3d895cbdb29ebc128072be1d70e988ff1 Mon Sep 17 00:00:00 2001 From: Grant Limberg Date: Thu, 11 Sep 2025 07:36:25 -0700 Subject: [PATCH] Fix JNI after `ZT_Node_New` function signature change --- java/jni/com_zerotierone_sdk_Node.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/java/jni/com_zerotierone_sdk_Node.cpp b/java/jni/com_zerotierone_sdk_Node.cpp index ba1627856..3e5de2786 100644 --- a/java/jni/com_zerotierone_sdk_Node.cpp +++ b/java/jni/com_zerotierone_sdk_Node.cpp @@ -53,7 +53,8 @@ namespace { jobject eventListenerLocalIn, jobject frameListenerLocalIn, jobject configListenerLocalIn, - jobject pathCheckerLocalIn) + jobject pathCheckerLocalIn, + ZT_Node_Config *nc) : id(id) , jvm(jvm) , node() @@ -64,6 +65,7 @@ namespace { , frameListener() , configListener() , pathChecker() + , nodeConfig(nc) , inited() { JNIEnv *env; @@ -90,6 +92,9 @@ namespace { env->DeleteGlobalRef(frameListener); env->DeleteGlobalRef(configListener); env->DeleteGlobalRef(pathChecker); + + delete nodeConfig; + nodeConfig = NULL; } int64_t id; @@ -105,6 +110,7 @@ namespace { jobject frameListener; jobject configListener; jobject pathChecker; + ZT_Node_Config *nodeConfig; bool inited; @@ -865,6 +871,10 @@ JNIEXPORT jobject JNICALL Java_com_zerotier_sdk_Node_node_1init( callbacks.pathCheckFunction = &PathCheckFunction; callbacks.pathLookupFunction = &PathLookupFunction; + ZT_Node_Config *nodeConfig = new ZT_Node_Config(); + nodeConfig->enableEncryptedHello = 0; + nodeConfig->lowBandwidthMode = 0; + // // a bit of a confusing dance here where ref and node both know about each other // @@ -877,11 +887,13 @@ JNIEXPORT jobject JNICALL Java_com_zerotier_sdk_Node_node_1init( eventListener, frameListener, configListener, - pathChecker); + pathChecker, + nodeConfig); ZT_Node *node; ZT_ResultCode rc = ZT_Node_new( &node, + nodeConfig, ref, NULL, &callbacks,