summaryrefslogtreecommitdiffhomepage
path: root/gui/src/main
diff options
context:
space:
mode:
authorOskar Nyberg <oskar@mullvad.net>2020-06-05 10:37:46 +0200
committerOskar Nyberg <oskar@mullvad.net>2020-06-05 10:42:17 +0200
commit76a8fa5f60d02d1a7f825258c60ec36aad2fee2f (patch)
treeee05d64d3d4c78b7bf85d491c8db19b9fe751ef7 /gui/src/main
parent02198644f9262a5c5516c27026b3938691e5366b (diff)
downloadmullvadvpn-76a8fa5f60d02d1a7f825258c60ec36aad2fee2f.tar.xz
mullvadvpn-76a8fa5f60d02d1a7f825258c60ec36aad2fee2f.zip
Move autoconnect to main process and check if account has expired
Diffstat (limited to 'gui/src/main')
-rw-r--r--gui/src/main/index.ts15
1 files changed, 15 insertions, 0 deletions
diff --git a/gui/src/main/index.ts b/gui/src/main/index.ts
index d64ff7cf93..ba9f8a9baa 100644
--- a/gui/src/main/index.ts
+++ b/gui/src/main/index.ts
@@ -1108,6 +1108,7 @@ class ApplicationMain {
}
await this.daemonRpc.setAccount(accountToken);
+ consumePromise(this.autoConnect());
} catch (error) {
log.error(`Failed to login: ${error.message}`);
@@ -1119,6 +1120,20 @@ class ApplicationMain {
}
}
+ private async autoConnect() {
+ if (
+ !this.accountData ||
+ !new AccountExpiry(this.accountData.expiry, this.locale).hasExpired()
+ ) {
+ try {
+ log.info('Auto-connecting the tunnel');
+ await this.daemonRpc.connectTunnel();
+ } catch (error) {
+ log.error(`Failed to auto-connect the tunnel: ${error.message}`);
+ }
+ }
+ }
+
private async logout(): Promise<void> {
try {
await this.daemonRpc.setAccount();