summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/MullvadDaemon.kt1
-rw-r--r--mullvad-jni/src/lib.rs11
2 files changed, 12 insertions, 0 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/MullvadDaemon.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/MullvadDaemon.kt
index 751334ea61..06b580d013 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/MullvadDaemon.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/MullvadDaemon.kt
@@ -33,6 +33,7 @@ class MullvadDaemon(val vpnService: MullvadVpnService) {
external fun getVersionInfo(): AppVersionInfo?
external fun getWireguardKey(): PublicKey?
external fun setAccount(accountToken: String?)
+ external fun shutdown()
external fun updateRelaySettings(update: RelaySettingsUpdate)
private external fun initialize(vpnService: MullvadVpnService)
diff --git a/mullvad-jni/src/lib.rs b/mullvad-jni/src/lib.rs
index cd1d0a47e4..96d8c8ba55 100644
--- a/mullvad-jni/src/lib.rs
+++ b/mullvad-jni/src/lib.rs
@@ -425,6 +425,17 @@ pub extern "system" fn Java_net_mullvad_mullvadvpn_MullvadDaemon_setAccount(
#[no_mangle]
#[allow(non_snake_case)]
+pub extern "system" fn Java_net_mullvad_mullvadvpn_MullvadDaemon_shutdown(_: JNIEnv, _: JObject) {
+ if let Err(error) = DAEMON_INTERFACE.shutdown() {
+ log::error!(
+ "{}",
+ error.display_chain_with_msg("Failed to shutdown daemon thread")
+ );
+ }
+}
+
+#[no_mangle]
+#[allow(non_snake_case)]
pub extern "system" fn Java_net_mullvad_mullvadvpn_MullvadDaemon_updateRelaySettings(
env: JNIEnv,
_: JObject,