fix(vpnsecure): allow empty OpenVPN user+password

This commit is contained in:
Quentin McGaw
2022-09-09 22:06:36 +00:00
parent aa53436e56
commit 8f04a05b45
2 changed files with 7 additions and 3 deletions

View File

@@ -99,12 +99,13 @@ func (o OpenVPN) validate(vpnProvider string) (err error) {
}
isCustom := vpnProvider == providers.Custom
isUserRequired := !isCustom && vpnProvider != providers.VPNSecure
if !isCustom && *o.User == "" {
if isUserRequired && *o.User == "" {
return ErrOpenVPNUserIsEmpty
}
passwordRequired := !isCustom &&
passwordRequired := isUserRequired &&
(vpnProvider != providers.Ivpn || !ivpnAccountID.MatchString(*o.User))
if passwordRequired && *o.Password == "" {

View File

@@ -61,10 +61,13 @@ func OpenVPNConfig(provider OpenVPNProviderSettings,
lines.add("suppress-timestamps") // do not log timestamps, the Gluetun logger takes care of it
lines.add("dev", settings.Interface)
lines.add("verb", fmt.Sprint(*settings.Verbosity))
lines.add("auth-user-pass", openvpn.AuthConf)
lines.add("proto", connection.Protocol)
lines.add("remote", connection.IP.String(), fmt.Sprint(connection.Port))
if *settings.User != "" {
lines.add("auth-user-pass", openvpn.AuthConf)
}
if !provider.AuthToken {
lines.add("pull-filter", "ignore", `"auth-token"`) // prevent auth failed loops
}