diff options
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/MullvadDaemon.kt | 1 | ||||
| -rw-r--r-- | mullvad-jni/src/lib.rs | 11 |
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, |
