diff options
author | Grant Limberg <glimberg@gmail.com> | 2015-04-22 19:18:49 -0700 |
---|---|---|
committer | Grant Limberg <glimberg@gmail.com> | 2015-04-22 19:18:49 -0700 |
commit | 787b4a8e506d25dbc55005122683a440e13344c5 (patch) | |
tree | 73311a5abdc790b5bb51432df036386bd5ecf964 /java | |
parent | b33e4af49fb53c7d901e575886feaf6b5c9e7e20 (diff) | |
download | infinitytier-787b4a8e506d25dbc55005122683a440e13344c5.tar.gz infinitytier-787b4a8e506d25dbc55005122683a440e13344c5.zip |
* Change a few method signatures from java.lang.Long to long[] so that values can be passed back.
Signed-off-by: Grant Limberg <glimberg@gmail.com>
Diffstat (limited to 'java')
-rw-r--r-- | java/jni/com_zerotierone_sdk_Node.h | 16 | ||||
-rw-r--r-- | java/src/com/zerotierone/sdk/Node.java | 50 |
2 files changed, 46 insertions, 20 deletions
diff --git a/java/jni/com_zerotierone_sdk_Node.h b/java/jni/com_zerotierone_sdk_Node.h index 706e7bcd..4682fa51 100644 --- a/java/jni/com_zerotierone_sdk_Node.h +++ b/java/jni/com_zerotierone_sdk_Node.h @@ -26,18 +26,26 @@ JNIEXPORT void JNICALL Java_com_zerotierone_sdk_Node_node_1delete /* * Class: com_zerotierone_sdk_Node * Method: processVirtualNetworkFrame - * Signature: (JJJJJIILjava/nio/ByteBuffer;ILjava/lang/Long;)Lcom/zerotierone/sdk/ResultCode; + * Signature: (JJJJJII[B[J)Lcom/zerotierone/sdk/ResultCode; */ JNIEXPORT jobject JNICALL Java_com_zerotierone_sdk_Node_processVirtualNetworkFrame - (JNIEnv *, jobject, jlong, jlong, jlong, jlong, jlong, jint, jint, jobject, jint, jobject); + (JNIEnv *, jobject, jlong, jlong, jlong, jlong, jlong, jint, jint, jbyteArray, jlongArray); + +/* + * Class: com_zerotierone_sdk_Node + * Method: processWirePacket + * Signature: (JJLjava/net/InetAddress;I[B[J)Lcom/zerotierone/sdk/ResultCode; + */ +JNIEXPORT jobject JNICALL Java_com_zerotierone_sdk_Node_processWirePacket + (JNIEnv *, jobject, jlong, jlong, jobject, jint, jbyteArray, jlongArray); /* * Class: com_zerotierone_sdk_Node * Method: processBackgroundTasks - * Signature: (JJLjava/lang/Long;)Lcom/zerotierone/sdk/ResultCode; + * Signature: (JJ[J)Lcom/zerotierone/sdk/ResultCode; */ JNIEXPORT jobject JNICALL Java_com_zerotierone_sdk_Node_processBackgroundTasks - (JNIEnv *, jobject, jlong, jlong, jobject); + (JNIEnv *, jobject, jlong, jlong, jlongArray); /* * Class: com_zerotierone_sdk_Node diff --git a/java/src/com/zerotierone/sdk/Node.java b/java/src/com/zerotierone/sdk/Node.java index 635f2b9e..61150dc9 100644 --- a/java/src/com/zerotierone/sdk/Node.java +++ b/java/src/com/zerotierone/sdk/Node.java @@ -29,6 +29,7 @@ package com.zerotierone.sdk; import java.nio.ByteBuffer; import java.lang.Long; +import java.net.InetAddress; public class Node { static { @@ -85,18 +86,6 @@ public class Node { close(); } - private native ResultCode processVirtualNetworkFrame( - long nodeId, - long now, - long nwid, - long sourceMac, - long destMac, - int etherType, - int vlanId, - ByteBuffer frameData, - int frameLength, - Long nextBackgroundTaskDeadline); - public ResultCode processVirtualNetworkFrame( long now, long nwid, @@ -104,14 +93,24 @@ public class Node { long destMac, int etherType, int vlanId, - ByteBuffer frameData, - int frameLength, - Long nextBackgroundTaskDeadline) { + byte[] frameData, + long[] nextBackgroundTaskDeadline) { return processVirtualNetworkFrame( nodeId, now, nwid, sourceMac, destMac, etherType, vlanId, frameData, frameLength, nextBackgroundTaskDeadline); } + public ResultCode processWirePacket( + long now, + InetAddress remoteAddress, + int linkDesperation, + byte[] packetData, + long[] nextBackgroundTaskDeadline) { + return processWirePacket( + nodeId, now, remoteAddress, linkDesperation, packetData, + nextBackgroundTaskDeadline); + } + public ResultCode processBackgroundTasks(long now, long nextBackgroundTaskDeadline) { return processBackgroundTasks(nodeId, now, nextBackgroundTaskDeadline); } @@ -161,10 +160,29 @@ public class Node { private native void node_delete(long nodeId); + private native ResultCode processVirtualNetworkFrame( + long nodeId, + long now, + long nwid, + long sourceMac, + long destMac, + int etherType, + int vlanId, + byte[] frameData, + long[] nextBackgroundTaskDeadline); + + private native ResultCode processWirePacket( + long nodeId, + long now, + InetAddress remoteAddress, + int linkDesperation, + byte[] packetData, + long[] nextBackgroundTaskDeadline); + private native ResultCode processBackgroundTasks( long nodeId, long now, - Long nextBackgroundTaskDeadline); + long[] nextBackgroundTaskDeadline); private native ResultCode join(long nodeId, long nwid); |