summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDavid Göransson <david.goransson@mullvad.net>2024-10-17 15:15:08 +0200
committerDavid Göransson <david.goransson@mullvad.net>2024-10-17 15:15:08 +0200
commitac405846bb1cb1faa56e9aa2ff1fb2a772e33379 (patch)
treefe498d6db36930bc0b6c978bb2ecfaf201d1f03b
parentacb7bc4fa89816d9fb0f0035be2b8a9d46ac538d (diff)
parent80f6218c361fc3bf3163517d88170d896bd7f61c (diff)
downloadmullvadvpn-ac405846bb1cb1faa56e9aa2ff1fb2a772e33379.tar.xz
mullvadvpn-ac405846bb1cb1faa56e9aa2ff1fb2a772e33379.zip
Merge branch 'obfuscation-not-working-unless-daita-or-pq-enabled-droid-1449'
-rw-r--r--talpid-wireguard/src/lib.rs19
1 files changed, 10 insertions, 9 deletions
diff --git a/talpid-wireguard/src/lib.rs b/talpid-wireguard/src/lib.rs
index 2e6584a848..64c65d2c4e 100644
--- a/talpid-wireguard/src/lib.rs
+++ b/talpid-wireguard/src/lib.rs
@@ -373,6 +373,16 @@ impl WireguardMonitor {
log_path: Option<&Path>,
args: TunnelArgs<'_, F>,
) -> Result<WireguardMonitor> {
+ let (close_obfs_sender, close_obfs_listener) = sync_mpsc::channel();
+ // TODO: Document the side effect of starting this before opening the tunnel!
+ let obfuscator = args
+ .runtime
+ .block_on(obfuscation::apply_obfuscation_config(
+ &mut config,
+ close_obfs_sender.clone(),
+ args.tun_provider.clone(),
+ ))?;
+
let should_negotiate_ephemeral_peer = config.quantum_resistant || config.daita;
let tunnel = Self::open_tunnel(
args.runtime.clone(),
@@ -386,15 +396,6 @@ impl WireguardMonitor {
should_negotiate_ephemeral_peer,
)?;
- let (close_obfs_sender, close_obfs_listener) = sync_mpsc::channel();
- let obfuscator = args
- .runtime
- .block_on(obfuscation::apply_obfuscation_config(
- &mut config,
- close_obfs_sender.clone(),
- args.tun_provider.clone(),
- ))?;
-
let iface_name = tunnel.get_interface_name();
let (pinger_tx, pinger_rx) = sync_mpsc::channel();