Exposed stop_service() to java-land
This commit is contained in:
@@ -94,7 +94,7 @@ void zts_leave_network(const char * nwid);
|
||||
bool zts_is_running();
|
||||
void zts_get_addresses(const char * nwid, char * addrstr);
|
||||
int zts_get_device_id();
|
||||
void zts_terminate();
|
||||
void zts_stop_service();
|
||||
bool zts_is_relayed();
|
||||
// ZT Intercept/RPC Controls
|
||||
void set_intercept_status(int mode); /* TODO: Rethink this */
|
||||
@@ -134,12 +134,12 @@ ssize_t zts_recvmsg(RECVMSG_SIG);
|
||||
#if defined(__ANDROID__)
|
||||
// Exported JNI : ZT SERVICE CONTROLS
|
||||
JNIEXPORT jint JNICALL Java_ZeroTier_SDK_zt_1start_1service(JNIEnv *env, jobject thisObj, jstring path);
|
||||
JNIEXPORT jboolean JNICALL Java_ZeroTier_SDK_zt_1stop_service();
|
||||
JNIEXPORT void JNICALL Java_ZeroTier_SDK_zt_1join_1network(JNIEnv *env, jobject thisObj, jstring nwid);
|
||||
JNIEXPORT void JNICALL Java_ZeroTier_SDK_zt_1leave_1network(JNIEnv *env, jobject thisObj, jstring nwid);
|
||||
JNIEXPORT jboolean JNICALL Java_ZeroTier_SDK_zt_1running(JNIEnv *env, jobject thisObj);
|
||||
JNIEXPORT jobject JNICALL Java_ZeroTier_SDK_zt_1get_1addresses(JNIEnv *env, jobject thisObj, jstring nwid);
|
||||
JNIEXPORT jboolean JNICALL Java_ZeroTier_SDK_zt_1is_1relayed();
|
||||
JNIEXPORT jboolean JNICALL Java_ZeroTier_SDK_zt_1terminate_service();
|
||||
// Exported JNI : SOCKS5 PROXY SERVER CONTROLS
|
||||
JNIEXPORT jint JNICALL Java_ZeroTier_SDK_zt_1start_1proxy_1server(JNIEnv *env, jobject thisObj, jstring nwid, jobject zaddr);
|
||||
JNIEXPORT jint JNICALL Java_ZeroTier_SDK_zt_1stop_1proxy_1server(JNIEnv *env, jobject thisObj, jstring nwid);
|
||||
|
||||
@@ -16,6 +16,7 @@ void enable_intercept();
|
||||
|
||||
// ZT SERVICE CONTROLS
|
||||
void start_service(const char * path);
|
||||
void stop_service();
|
||||
void start_service_and_rpc(const char * path, const char * nwid);
|
||||
void zt_join_network(const char *nwid);
|
||||
void zt_leave_network(const char *nwid);
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
#define SDK_DEBUG_H
|
||||
|
||||
// Set during make (e.g. make SDK_DEBUG=2)
|
||||
#define DEBUG_LEVEL 2
|
||||
#define DEBUG_LEVEL 4
|
||||
|
||||
#define MSG_ERROR 1 // Errors
|
||||
#define MSG_TRANSFER 2 // RX/TX specific statements
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
* LLC. Start here: http://www.zerotier.com/
|
||||
*/
|
||||
|
||||
#define DEBUG_LEVEL 2 // Set this to adjust what you'd like to see in the debug traces
|
||||
#define DEBUG_LEVEL 4 // Set this to adjust what you'd like to see in the debug traces
|
||||
|
||||
#define MSG_ERROR 1 // Errors
|
||||
#define MSG_TRANSFER 2 // RX/TX specific statements
|
||||
|
||||
@@ -109,7 +109,7 @@ void zts_join_network(const char * nwid) {
|
||||
}
|
||||
void zts_leave_network(const char * nwid) { zt1Service->leave(nwid); }
|
||||
bool zts_is_running() { return zt1Service->isRunning(); }
|
||||
void zts_terminate() { zt1Service->terminate(); }
|
||||
void zts_stop_service() { zt1Service->terminate(); }
|
||||
|
||||
// FIXME: Re-implemented to make it play nicer with the C-linkage required for Xcode integrations
|
||||
// Now only returns first assigned address per network. Shouldn't normally be a problem
|
||||
@@ -187,9 +187,9 @@ int zts_get_proxy_server_address(const char * nwid, struct sockaddr_storage * ad
|
||||
return false;
|
||||
}
|
||||
// Shuts down ZeroTier service and SOCKS5 Proxy server
|
||||
JNIEXPORT void JNICALL Java_ZeroTier_SDK_zt_1terminate_1service(JNIEnv *env, jobject thisObj) {
|
||||
JNIEXPORT void JNICALL Java_ZeroTier_SDK_zt_1stop_1service(JNIEnv *env, jobject thisObj) {
|
||||
if(zt1Service)
|
||||
zts_terminate();
|
||||
zts_stop_service();
|
||||
// TODO: Also terminate SOCKS5 Proxy
|
||||
// zts_stop_proxy_server();
|
||||
}
|
||||
|
||||
@@ -39,6 +39,10 @@ extern "C" void start_service(const char * path) {
|
||||
init_service(INTERCEPT_DISABLED, path);
|
||||
}
|
||||
|
||||
extern "C" void stop_service() {
|
||||
zts_stop_service();
|
||||
}
|
||||
|
||||
// Starts a ZeroTier service at the specified path and initializes the RPC mechanism
|
||||
// This will allow direct API calls
|
||||
extern "C" void start_service_and_rpc(const char * path, const char * nwid) {
|
||||
|
||||
Reference in New Issue
Block a user