diff options
author | Mikael Magnusson <mikma@users.sourceforge.net> | 2022-11-05 22:03:39 +0000 |
---|---|---|
committer | Mikael Magnusson <mikma@users.sourceforge.net> | 2023-02-07 22:45:07 +0100 |
commit | 25cb8f368fa1a811b3fc91be2b9607beb07cab88 (patch) | |
tree | 8a4e3d72f949e7514e7e17f151b292d37f061a80 /tunnel/tools/libwg-go/jni.c | |
parent | bc7f43a5e795553a1a111b95c80aa3c7c7ef8121 (diff) |
WIP add unstaged changesold/dhcp
Diffstat (limited to 'tunnel/tools/libwg-go/jni.c')
-rw-r--r-- | tunnel/tools/libwg-go/jni.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/tunnel/tools/libwg-go/jni.c b/tunnel/tools/libwg-go/jni.c index 3897b2b7..3660e96a 100644 --- a/tunnel/tools/libwg-go/jni.c +++ b/tunnel/tools/libwg-go/jni.c @@ -13,7 +13,7 @@ struct go_string { const char *str; long n; }; extern int wgTurnOn(struct go_string ifname, int tun_fd, struct go_string settings, void *eventHandler); -extern int wgTurnOnDhcp(struct go_string ifname, struct go_string settings, void *eventHandler); +extern int wgTurnOnDhcp(struct go_string ifname, struct go_string lladdr, struct go_string settings, void *eventHandler); extern void wgSetFd(int handle, int tun_fd); extern void *wgTurnOff(int handle); extern int wgGetSocketV4(int handle); @@ -72,10 +72,12 @@ JNIEXPORT jint JNICALL Java_com_wireguard_android_backend_GoBackend_wgTurnOn(JNI return ret; } -JNIEXPORT jint JNICALL Java_com_wireguard_android_backend_GoBackend_wgTurnOnDhcp(JNIEnv *env, jclass c, jstring ifname, jstring settings, jobject eventHandler) +JNIEXPORT jint JNICALL Java_com_wireguard_android_backend_GoBackend_wgTurnOnDhcp(JNIEnv *env, jclass c, jstring ifname, jstring lladdr, jstring settings, jobject eventHandler) { const char *ifname_str = (*env)->GetStringUTFChars(env, ifname, 0); size_t ifname_len = (*env)->GetStringUTFLength(env, ifname); + const char *lladdr_str = (*env)->GetStringUTFChars(env, lladdr, 0); + size_t lladdr_len = (*env)->GetStringUTFLength(env, lladdr); const char *settings_str = (*env)->GetStringUTFChars(env, settings, 0); size_t settings_len = (*env)->GetStringUTFLength(env, settings); jobject event_handler = (*env)->NewGlobalRef(env, eventHandler); @@ -83,10 +85,14 @@ JNIEXPORT jint JNICALL Java_com_wireguard_android_backend_GoBackend_wgTurnOnDhcp .str = ifname_str, .n = ifname_len }, (struct go_string){ + .str = lladdr_str, + .n = lladdr_len + }, (struct go_string){ .str = settings_str, .n = settings_len }, event_handler); (*env)->ReleaseStringUTFChars(env, ifname, ifname_str); + (*env)->ReleaseStringUTFChars(env, lladdr, lladdr_str); (*env)->ReleaseStringUTFChars(env, settings, settings_str); return ret; } |