diff --git a/internal/provider/utils/openvpn.go b/internal/provider/utils/openvpn.go index 66691df4..f1db11ee 100644 --- a/internal/provider/utils/openvpn.go +++ b/internal/provider/utils/openvpn.go @@ -65,7 +65,11 @@ func OpenVPNConfig(provider OpenVPNProviderSettings, lines.add("handshake-window", "10") // default is 60 seconds which is too long lines.add("dev", settings.Interface) lines.add("verb", fmt.Sprint(*settings.Verbosity)) - lines.add("proto", connection.Protocol) + protocol := connection.Protocol + if protocol == constants.TCP { + protocol = "tcp-client" + } + lines.add("proto", protocol) lines.add("remote", connection.IP.String(), fmt.Sprint(connection.Port)) if *settings.User != "" { diff --git a/internal/updater/openvpn/extract.go b/internal/updater/openvpn/extract.go index 37f6b14d..00ed9ce8 100644 --- a/internal/updater/openvpn/extract.go +++ b/internal/updater/openvpn/extract.go @@ -25,7 +25,7 @@ func ExtractProto(b []byte) (tcp, udp bool, err error) { s = strings.TrimSpace(s) s = strings.ToLower(s) switch s { - case "tcp", "tcp4", "tcp6": + case "tcp", "tcp4", "tcp6", "tcp-client": return true, false, nil case "udp", "udp4", "udp6": return false, true, nil