diff options
| author | David Lönnhager <david.l@mullvad.net> | 2022-09-13 16:02:25 +0200 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2022-09-13 16:02:25 +0200 |
| commit | b6eabd92908ee7e5dd2a2a77bf7faf5669504e66 (patch) | |
| tree | 9ff9c18d55e8d1510b6bb6e75cc7076dd78e6d00 | |
| parent | 847a2de761d1ee221ea0c909e3caf564b974b646 (diff) | |
| parent | 17372e11debc1265ec6f03a875edc28941a60439 (diff) | |
| download | mullvadvpn-b6eabd92908ee7e5dd2a2a77bf7faf5669504e66.tar.xz mullvadvpn-b6eabd92908ee7e5dd2a2a77bf7faf5669504e66.zip | |
Merge branch 'win-openvpn-remove-tap-option'
| -rw-r--r-- | talpid-core/src/process/openvpn.rs | 38 | ||||
| -rw-r--r-- | talpid-core/src/tunnel/openvpn/mod.rs | 5 |
2 files changed, 3 insertions, 40 deletions
diff --git a/talpid-core/src/process/openvpn.rs b/talpid-core/src/process/openvpn.rs index 0c4a9580f8..3d2f5668a0 100644 --- a/talpid-core/src/process/openvpn.rs +++ b/talpid-core/src/process/openvpn.rs @@ -47,30 +47,13 @@ static BASE_ARGUMENTS: &[&[&str]] = &[ &["--route-noexec"], #[cfg(windows)] &["--ip-win32", "ipapi"], + #[cfg(windows)] + &["--windows-driver", "wintun"], ]; static ALLOWED_TLS1_3_CIPHERS: &[&str] = &["TLS_AES_256_GCM_SHA384", "TLS_CHACHA20_POLY1305_SHA256"]; -/// Tun driver to use, specified using `--windows-driver`. -#[derive(Clone)] -pub enum WindowsDriver { - /// TAP adapter driver - TapWindows6, - /// Wintun driver - Wintun, -} - -impl WindowsDriver { - /// Return string to use with the `--windows-driver` option. - pub fn as_str(&self) -> &'static str { - match self { - WindowsDriver::TapWindows6 => "tap-windows6", - WindowsDriver::Wintun => "wintun", - } - } -} - /// An OpenVPN process builder, providing control over the different arguments that the OpenVPN /// binary accepts. #[derive(Clone)] @@ -87,8 +70,6 @@ pub struct OpenVpnCommand { log: Option<PathBuf>, tunnel_options: net::openvpn::TunnelOptions, proxy_settings: Option<net::openvpn::ProxySettings>, - #[cfg(windows)] - windows_driver: Option<WindowsDriver>, tunnel_alias: Option<OsString>, enable_ipv6: bool, proxy_port: Option<u16>, @@ -111,8 +92,6 @@ impl OpenVpnCommand { log: None, tunnel_options: net::openvpn::TunnelOptions::default(), proxy_settings: None, - #[cfg(windows)] - windows_driver: None, tunnel_alias: None, enable_ipv6: true, proxy_port: None, @@ -181,13 +160,6 @@ impl OpenVpnCommand { self } - /// Sets the driver to use for tunneling - #[cfg(windows)] - pub fn windows_driver(&mut self, driver: Option<WindowsDriver>) -> &mut Self { - self.windows_driver = driver; - self - } - /// Sets the tunnel alias which will be used to identify a tunnel device that will be used by /// OpenVPN. pub fn tunnel_alias(&mut self, tunnel_alias: Option<OsString>) -> &mut Self { @@ -277,12 +249,6 @@ impl OpenVpnCommand { args.push(tunnel_device.clone()); } - #[cfg(windows)] - if let Some(ref windows_driver) = self.windows_driver { - args.push(OsString::from("--windows-driver")); - args.push(OsString::from(windows_driver.as_str())); - } - args.extend(Self::tls_cipher_arguments().iter().map(OsString::from)); args.extend(self.proxy_arguments().iter().map(OsString::from)); diff --git a/talpid-core/src/tunnel/openvpn/mod.rs b/talpid-core/src/tunnel/openvpn/mod.rs index 8a8581df40..7c0277d3b7 100644 --- a/talpid-core/src/tunnel/openvpn/mod.rs +++ b/talpid-core/src/tunnel/openvpn/mod.rs @@ -685,10 +685,7 @@ impl<C: OpenVpnBuilder + Send + 'static> OpenVpnMonitor<C> { .enable_ipv6(params.generic_options.enable_ipv6) .ca(resource_dir.join("ca.crt")); #[cfg(windows)] - { - cmd.tunnel_alias(Some(alias)); - cmd.windows_driver(Some(crate::process::openvpn::WindowsDriver::Wintun)); - } + cmd.tunnel_alias(Some(alias)); if let Some(proxy_settings) = params.proxy.clone().take() { cmd.proxy_settings(proxy_settings); } |
