summaryrefslogtreecommitdiffhomepage
path: root/gui/src/shared
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2024-01-31 11:03:52 +0100
committerDavid Lönnhager <david.l@mullvad.net>2024-01-31 11:03:52 +0100
commit962a55443b91c401f3ccbe197fd06aac7d3640aa (patch)
tree1efbe615ca7d6c0ea336ff940dca971ca6003351 /gui/src/shared
parent21d1883687ed32f5abe60de062eb83ae31f97163 (diff)
parent8e78ab6fb04125b6424c825bee9c5c6e5f155991 (diff)
downloadmullvadvpn-962a55443b91c401f3ccbe197fd06aac7d3640aa.tar.xz
mullvadvpn-962a55443b91c401f3ccbe197fd06aac7d3640aa.zip
Merge branch 'detect-driver-conflict' into main
Diffstat (limited to 'gui/src/shared')
-rw-r--r--gui/src/shared/daemon-rpc-types.ts6
-rw-r--r--gui/src/shared/notifications/error.ts9
2 files changed, 15 insertions, 0 deletions
diff --git a/gui/src/shared/daemon-rpc-types.ts b/gui/src/shared/daemon-rpc-types.ts
index b409a6e835..71f6936804 100644
--- a/gui/src/shared/daemon-rpc-types.ts
+++ b/gui/src/shared/daemon-rpc-types.ts
@@ -44,6 +44,7 @@ export enum ErrorStateCause {
setFirewallPolicyError,
setDnsError,
startTunnelError,
+ createTunnelDeviceError,
tunnelParameterError,
isOffline,
splitTunnelError,
@@ -79,6 +80,11 @@ export type ErrorState =
authFailedError: AuthFailedError;
}
| {
+ cause: ErrorStateCause.createTunnelDeviceError;
+ blockingError?: FirewallPolicyError;
+ osError?: number;
+ }
+ | {
cause: ErrorStateCause.tunnelParameterError;
blockingError?: FirewallPolicyError;
parameterError: TunnelParameterError;
diff --git a/gui/src/shared/notifications/error.ts b/gui/src/shared/notifications/error.ts
index 8b65a1e86d..44c28a092c 100644
--- a/gui/src/shared/notifications/error.ts
+++ b/gui/src/shared/notifications/error.ts
@@ -163,6 +163,15 @@ function getMessage(errorState: ErrorState): string {
'notifications',
'Unable to start tunnel connection. Please send a problem report.',
);
+ case ErrorStateCause.createTunnelDeviceError:
+ if (errorState.osError === 4319) {
+ // TODO: add improved error for network device conflicts
+ }
+ // TODO: 'Failed to create tunnel device. Please send a problem report.',
+ return messages.pgettext(
+ 'notifications',
+ 'Unable to start tunnel connection. Please send a problem report.',
+ );
case ErrorStateCause.tunnelParameterError:
return getTunnelParameterMessage(errorState.parameterError);
case ErrorStateCause.isOffline: