diff options
| author | David Lönnhager <david.l@mullvad.net> | 2025-04-25 16:10:14 +0200 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2025-05-08 09:23:55 +0200 |
| commit | 40bf996a8c0e1a16ebbdb5da059ce8cec0ce325c (patch) | |
| tree | 1fd567d0cb92206846d2a21550b1b05002cbcac9 | |
| parent | f98465aef1ae5c857332110db6a9de8f573cde6c (diff) | |
| download | mullvadvpn-40bf996a8c0e1a16ebbdb5da059ce8cec0ce325c.tar.xz mullvadvpn-40bf996a8c0e1a16ebbdb5da059ce8cec0ce325c.zip | |
Add QUIC obfuscation to GUI
3 files changed, 17 insertions, 1 deletions
diff --git a/desktop/packages/mullvad-vpn/src/main/grpc-type-convertions.ts b/desktop/packages/mullvad-vpn/src/main/grpc-type-convertions.ts index f965cf8df4..69549c1d3c 100644 --- a/desktop/packages/mullvad-vpn/src/main/grpc-type-convertions.ts +++ b/desktop/packages/mullvad-vpn/src/main/grpc-type-convertions.ts @@ -426,6 +426,9 @@ function convertFromObfuscationEndpoint( case grpcTypes.ObfuscationEndpoint.ObfuscationType.SHADOWSOCKS: obfuscationType = 'shadowsocks'; break; + case grpcTypes.ObfuscationEndpoint.ObfuscationType.QUIC: + obfuscationType = 'quic'; + break; default: throw new Error('unsupported obfuscation protocol'); } @@ -693,6 +696,9 @@ function convertFromObfuscationSettings( case grpcTypes.ObfuscationSettings.SelectedObfuscation.SHADOWSOCKS: selectedObfuscationType = ObfuscationType.shadowsocks; break; + case grpcTypes.ObfuscationSettings.SelectedObfuscation.QUIC: + selectedObfuscationType = ObfuscationType.quic; + break; } return { diff --git a/desktop/packages/mullvad-vpn/src/renderer/components/WireguardSettings.tsx b/desktop/packages/mullvad-vpn/src/renderer/components/WireguardSettings.tsx index 62381087c1..8a2cf46e3a 100644 --- a/desktop/packages/mullvad-vpn/src/renderer/components/WireguardSettings.tsx +++ b/desktop/packages/mullvad-vpn/src/renderer/components/WireguardSettings.tsx @@ -215,6 +215,16 @@ function ObfuscationSettings() { ariaLabel: messages.pgettext('accessibility', 'UDP-over-TCP settings'), }, }, + // TODO: Remove 'development' condition before releasing QUIC. + // https://linear.app/mullvad/issue/DES-2105 + ...(window.env?.development + ? [ + { + label: messages.pgettext('wireguard-settings-view', 'QUIC'), + value: ObfuscationType.quic, + }, + ] + : []), { label: messages.gettext('Off'), value: ObfuscationType.off, diff --git a/desktop/packages/mullvad-vpn/src/shared/daemon-rpc-types.ts b/desktop/packages/mullvad-vpn/src/shared/daemon-rpc-types.ts index 2a12a06a30..ec9061e466 100644 --- a/desktop/packages/mullvad-vpn/src/shared/daemon-rpc-types.ts +++ b/desktop/packages/mullvad-vpn/src/shared/daemon-rpc-types.ts @@ -112,7 +112,7 @@ export function tunnelTypeToString(tunnel: TunnelType): string { } export type RelayProtocol = 'tcp' | 'udp'; -export type EndpointObfuscationType = 'udp2tcp' | 'shadowsocks'; +export type EndpointObfuscationType = 'udp2tcp' | 'shadowsocks' | 'quic'; export type Constraint<T> = 'any' | { only: T }; export type LiftedConstraint<T> = 'any' | T; |
