diff options
| author | David Lönnhager <david.l@mullvad.net> | 2025-08-05 12:16:33 +0200 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2025-08-05 14:15:32 +0200 |
| commit | 232f7eee33f1b2def4c534497a68034acb6361c1 (patch) | |
| tree | 38a68d58925df532a7b048b7e8625c98bc28b9ee | |
| parent | d71abf715b573e09451fb2ed0de3020a6cff44d6 (diff) | |
| download | mullvadvpn-232f7eee33f1b2def4c534497a68034acb6361c1.tar.xz mullvadvpn-232f7eee33f1b2def4c534497a68034acb6361c1.zip | |
Fix Android boringtun build
| -rw-r--r-- | Cargo.lock | 2 | ||||
| -rw-r--r-- | talpid-wireguard/Cargo.toml | 2 | ||||
| -rw-r--r-- | talpid-wireguard/src/boringtun/mod.rs | 14 |
3 files changed, 10 insertions, 8 deletions
diff --git a/Cargo.lock b/Cargo.lock index d9d9a990bb..1de4ace145 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -455,7 +455,7 @@ dependencies = [ [[package]] name = "boringtun" version = "0.6.0" -source = "git+https://github.com/mullvad/boringtun?rev=58fda6d4040d59e32034cb214906ccde51a21e5a#58fda6d4040d59e32034cb214906ccde51a21e5a" +source = "git+https://github.com/mullvad/boringtun?rev=82166463940bb76ac9917ded1fdf663ed6ece40e#82166463940bb76ac9917ded1fdf663ed6ece40e" dependencies = [ "aead", "async-trait", diff --git a/talpid-wireguard/Cargo.toml b/talpid-wireguard/Cargo.toml index 9ad5c4e0b7..1122494716 100644 --- a/talpid-wireguard/Cargo.toml +++ b/talpid-wireguard/Cargo.toml @@ -46,7 +46,7 @@ tokio-stream = { version = "0.1", features = ["io-util"] } optional = true features = ["device", "tun"] git = "https://github.com/mullvad/boringtun" -rev = "58fda6d4040d59e32034cb214906ccde51a21e5a" +rev = "82166463940bb76ac9917ded1fdf663ed6ece40e" [target.'cfg(unix)'.dependencies] nix = { workspace = true, features = ["fs"] } diff --git a/talpid-wireguard/src/boringtun/mod.rs b/talpid-wireguard/src/boringtun/mod.rs index 89b0272956..c8fab5d64a 100644 --- a/talpid-wireguard/src/boringtun/mod.rs +++ b/talpid-wireguard/src/boringtun/mod.rs @@ -78,18 +78,20 @@ struct AndroidUdpSocketFactory { #[cfg(target_os = "android")] impl UdpTransportFactory for AndroidUdpSocketFactory { - type Transport = <UdpSocketFactory as UdpTransportFactory>::Transport; + type Send = <UdpSocketFactory as UdpTransportFactory>::Send; + type Recv = <UdpSocketFactory as UdpTransportFactory>::Recv; async fn bind( &mut self, params: &boringtun::udp::UdpTransportFactoryParams, - ) -> std::io::Result<(Arc<Self::Transport>, Arc<Self::Transport>)> { - let (udp_v4, udp_v6) = UdpSocketFactory.bind(params).await?; + ) -> std::io::Result<((Self::Send, Self::Recv), (Self::Send, Self::Recv))> { + let ((udp_v4_tx, udp_v4_rx), (udp_v6_tx, udp_v6_rx)) = + UdpSocketFactory.bind(params).await?; - self.tun.bypass(&udp_v4).unwrap(); - self.tun.bypass(&udp_v6).unwrap(); + self.tun.bypass(&udp_v4_tx).unwrap(); + self.tun.bypass(&udp_v6_tx).unwrap(); - Ok((udp_v4, udp_v6)) + Ok(((udp_v4_tx, udp_v4_rx), (udp_v6_tx, udp_v6_rx))) } } |
