From a9589d8d5b97a7c08b78a38826c9d3e611358a75 Mon Sep 17 00:00:00 2001 From: Quentin McGaw Date: Tue, 18 May 2021 23:46:20 +0000 Subject: [PATCH] Fix: only use Openvpn fast-io when using UDP --- internal/provider/mullvad/openvpnconf.go | 5 ++++- internal/provider/nordvpn/openvpnconf.go | 5 ++++- internal/provider/protonvpn/openvpnconf.go | 5 ++++- internal/provider/surfshark/openvpnconf.go | 1 - internal/provider/torguard/openvpnconf.go | 5 ++++- 5 files changed, 16 insertions(+), 5 deletions(-) diff --git a/internal/provider/mullvad/openvpnconf.go b/internal/provider/mullvad/openvpnconf.go index 58087509..b9504cd1 100644 --- a/internal/provider/mullvad/openvpnconf.go +++ b/internal/provider/mullvad/openvpnconf.go @@ -30,7 +30,6 @@ func (m *Mullvad) BuildConf(connection models.OpenVPNConnection, "sndbuf 524288", "rcvbuf 524288", "tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-256-CBC-SHA", - "fast-io", "script-security 2", // Added constant values @@ -53,6 +52,10 @@ func (m *Mullvad) BuildConf(connection models.OpenVPNConnection, lines = append(lines, "auth "+settings.Auth) } + if connection.Protocol == constants.UDP { + lines = append(lines, "fast-io") + } + if settings.Provider.ExtraConfigOptions.OpenVPNIPv6 { lines = append(lines, "tun-ipv6") } else { diff --git a/internal/provider/nordvpn/openvpnconf.go b/internal/provider/nordvpn/openvpnconf.go index 0b0aea90..85a4ed43 100644 --- a/internal/provider/nordvpn/openvpnconf.go +++ b/internal/provider/nordvpn/openvpnconf.go @@ -38,7 +38,6 @@ func (n *Nordvpn) BuildConf(connection models.OpenVPNConnection, "mssfix " + strconv.Itoa(int(settings.MSSFix)), "reneg-sec 0", "comp-lzo no", - "fast-io", "key-direction 1", "ping 15", "ping-restart 0", @@ -60,6 +59,10 @@ func (n *Nordvpn) BuildConf(connection models.OpenVPNConnection, "auth " + settings.Auth, } + if connection.Protocol == constants.UDP { + lines = append(lines, "fast-io") + } + if !settings.Root { lines = append(lines, "user "+username) } diff --git a/internal/provider/protonvpn/openvpnconf.go b/internal/provider/protonvpn/openvpnconf.go index 5774abcf..e8ade516 100644 --- a/internal/provider/protonvpn/openvpnconf.go +++ b/internal/provider/protonvpn/openvpnconf.go @@ -37,7 +37,6 @@ func (p *Protonvpn) BuildConf(connection models.OpenVPNConnection, "tun-mtu-extra 32", "mssfix " + strconv.Itoa(int(settings.MSSFix)), "reneg-sec 0", - "fast-io", "key-direction 1", "pull", "comp-lzo no", @@ -59,6 +58,10 @@ func (p *Protonvpn) BuildConf(connection models.OpenVPNConnection, "auth " + settings.Auth, } + if connection.Protocol == constants.UDP { + lines = append(lines, "fast-io") + } + if !settings.Root { lines = append(lines, "user "+username) } diff --git a/internal/provider/surfshark/openvpnconf.go b/internal/provider/surfshark/openvpnconf.go index 01acb27b..4f20817e 100644 --- a/internal/provider/surfshark/openvpnconf.go +++ b/internal/provider/surfshark/openvpnconf.go @@ -39,7 +39,6 @@ func (s *Surfshark) BuildConf(connection models.OpenVPNConnection, "tun-mtu-extra 32", "mssfix " + strconv.Itoa(int(settings.MSSFix)), "reneg-sec 0", - "fast-io", "key-direction 1", "script-security 2", "ping-restart 0", diff --git a/internal/provider/torguard/openvpnconf.go b/internal/provider/torguard/openvpnconf.go index 71bf10a9..c1f4fbec 100644 --- a/internal/provider/torguard/openvpnconf.go +++ b/internal/provider/torguard/openvpnconf.go @@ -37,7 +37,6 @@ func (t *Torguard) BuildConf(connection models.OpenVPNConnection, "tun-mtu-extra 32", "mssfix " + strconv.Itoa(int(settings.MSSFix)), "reneg-sec 0", - "fast-io", "key-direction 1", "script-security 2", "ncp-disable", @@ -67,6 +66,10 @@ func (t *Torguard) BuildConf(connection models.OpenVPNConnection, lines = append(lines, "user "+username) } + if connection.Protocol == constants.UDP { + lines = append(lines, "fast-io") + } + lines = append(lines, utils.WrapOpenvpnCA( constants.TorguardCertificate)...) lines = append(lines, utils.WrapOpenvpnTLSAuth(