ZT1_jniutils.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #ifndef ZT1_jniutils_h_
  2. #define ZT1_jniutils_h_
  3. #include <stdio.h>
  4. #include <jni.h>
  5. #include <ZeroTierOne.h>
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9. #define LOG_TAG "ZeroTierOneJNI"
  10. #if __ANDROID__
  11. #include <android/log.h>
  12. #define LOGI(...) ((void)__android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__))
  13. #define LOGD(...) ((void)__android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__))
  14. #define LOGE(...) ((void)__android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__))
  15. #else
  16. #define LOGI(...) fprintf(stdout, __VA_ARGS__)
  17. #define LOGD(...) fprintf(stdout, __VA_ARGS__)
  18. #define LOGE(...) fprintf(stdout, __VA_ARGS__)
  19. #endif
  20. jobject createResultObject(JNIEnv *env, ZT1_ResultCode code);
  21. jobject createVirtualNetworkStatus(JNIEnv *env, ZT1_VirtualNetworkStatus status);
  22. jobject createVirtualNetworkType(JNIEnv *env, ZT1_VirtualNetworkType type);
  23. jobject createEvent(JNIEnv *env, ZT1_Event event);
  24. jobject createPeerRole(JNIEnv *env, ZT1_PeerRole role);
  25. jobject createVirtualNetworkConfigOperation(JNIEnv *env, ZT1_VirtualNetworkConfigOperation op);
  26. jobject newArrayList(JNIEnv *env);
  27. bool appendItemToArrayList(JNIEnv *env, jobject array, jobject object);
  28. jobject newInetSocketAddress(JNIEnv *env, const sockaddr_storage &addr);
  29. jobject newInetAddress(JNIEnv *env, const sockaddr_storage &addr);
  30. jobject newMulticastGroup(JNIEnv *env, const ZT1_MulticastGroup &mc);
  31. jobject newPeer(JNIEnv *env, const ZT1_Peer &peer);
  32. jobject newPeerPhysicalPath(JNIEnv *env, const ZT1_PeerPhysicalPath &ppp);
  33. jobject newNetworkConfig(JNIEnv *env, const ZT1_VirtualNetworkConfig &config);
  34. jobject newVersion(JNIEnv *env, int major, int minor, int rev, long featureFlags);
  35. #ifdef __cplusplus
  36. }
  37. #endif
  38. #endif