2021-05-11 17:10:51 +00:00
|
|
|
package privateinternetaccess
|
|
|
|
|
|
|
|
|
|
import (
|
2022-01-06 06:40:23 -05:00
|
|
|
"github.com/qdm12/gluetun/internal/configuration/settings"
|
2021-05-11 17:10:51 +00:00
|
|
|
"github.com/qdm12/gluetun/internal/models"
|
2022-05-07 19:03:38 +00:00
|
|
|
"github.com/qdm12/gluetun/internal/provider/privateinternetaccess/presets"
|
2021-05-11 17:10:51 +00:00
|
|
|
"github.com/qdm12/gluetun/internal/provider/utils"
|
|
|
|
|
)
|
|
|
|
|
|
2022-09-12 21:31:37 +00:00
|
|
|
func (p *Provider) GetConnection(selection settings.ServerSelection, ipv6Supported bool) (
|
2021-08-19 14:09:41 +00:00
|
|
|
connection models.Connection, err error) {
|
2022-04-19 14:28:57 +00:00
|
|
|
// Set port defaults depending on encryption preset.
|
|
|
|
|
var defaults utils.ConnectionDefaults
|
|
|
|
|
switch *selection.OpenVPN.PIAEncPreset {
|
2022-05-07 19:03:38 +00:00
|
|
|
case presets.None, presets.Normal:
|
2022-04-19 14:28:57 +00:00
|
|
|
defaults.OpenVPNTCPPort = 502
|
|
|
|
|
defaults.OpenVPNUDPPort = 1198
|
2022-05-07 19:03:38 +00:00
|
|
|
case presets.Strong:
|
2022-04-19 14:28:57 +00:00
|
|
|
defaults.OpenVPNTCPPort = 501
|
|
|
|
|
defaults.OpenVPNUDPPort = 1197
|
2021-05-11 17:10:51 +00:00
|
|
|
}
|
|
|
|
|
|
2022-06-07 16:58:08 +00:00
|
|
|
return utils.GetConnection(p.Name(),
|
2022-09-12 21:31:37 +00:00
|
|
|
p.storage, selection, defaults, ipv6Supported, p.randSource)
|
2021-05-11 17:10:51 +00:00
|
|
|
}
|