chore(env): VPN_INTERFACE

- With retro-compatibility with `OPENVPN_INTERFACE`
- With retro-compatibility with `WIREGUARD_INTERFACE`
This commit is contained in:
Quentin McGaw
2022-01-29 15:00:04 +00:00
parent 0d8cb66d43
commit 5603e25542
5 changed files with 6 additions and 7 deletions

View File

@@ -71,6 +71,7 @@ ENV VPNSP=pia \
# Common VPN options
VPN_ENDPOINT_IP= \
VPN_ENDPOINT_PORT= \
VPN_INTERFACE=tun0 \
# OpenVPN
OPENVPN_PROTOCOL=udp \
OPENVPN_USER= \
@@ -85,13 +86,11 @@ ENV VPNSP=pia \
OPENVPN_PROCESS_USER= \
OPENVPN_IPV6=off \
OPENVPN_CUSTOM_CONFIG= \
OPENVPN_INTERFACE=tun0 \
# Wireguard
WIREGUARD_PRIVATE_KEY= \
WIREGUARD_PRESHARED_KEY= \
WIREGUARD_PUBLIC_KEY= \
WIREGUARD_ADDRESS= \
WIREGUARD_INTERFACE=wg0 \
# VPN server filtering
REGION= \
COUNTRY= \

View File

@@ -51,7 +51,7 @@ func (r *Reader) readOpenVPN() (
return openVPN, fmt.Errorf("environment variable OPENVPN_MSSFIX: %w", err)
}
openVPN.Interface = os.Getenv("OPENVPN_INTERFACE")
_, openVPN.Interface = r.getEnvWithRetro("VPN_INTERFACE", "OPENVPN_INTERFACE")
openVPN.ProcessUser, err = r.readOpenVPNProcessUser()
if err != nil {

View File

@@ -21,7 +21,7 @@ func (r *Reader) readVPN() (vpn settings.VPN, err error) {
return vpn, fmt.Errorf("cannot read OpenVPN settings: %w", err)
}
vpn.Wireguard, err = readWireguard()
vpn.Wireguard, err = r.readWireguard()
if err != nil {
return vpn, fmt.Errorf("cannot read Wireguard settings: %w", err)
}

View File

@@ -9,13 +9,13 @@ import (
"github.com/qdm12/gluetun/internal/configuration/settings"
)
func readWireguard() (wireguard settings.Wireguard, err error) {
func (r *Reader) readWireguard() (wireguard settings.Wireguard, err error) {
defer func() {
err = unsetEnvKeys([]string{"WIREGUARD_PRIVATE_KEY", "WIREGUARD_PRESHARED_KEY"}, err)
}()
wireguard.PrivateKey = envToStringPtr("WIREGUARD_PRIVATE_KEY")
wireguard.PreSharedKey = envToStringPtr("WIREGUARD_PRESHARED_KEY")
wireguard.Interface = os.Getenv("WIREGUARD_INTERFACE")
_, wireguard.Interface = r.getEnvWithRetro("VPN_INTERFACE", "WIREGUARD_INTERFACE")
wireguard.Addresses, err = readWireguardAddresses()
if err != nil {
return wireguard, err // already wrapped

View File

@@ -10,7 +10,7 @@ type StartData struct {
PortForwarder provider.PortForwarder
Gateway net.IP // needed for PIA
ServerName string // needed for PIA
Interface string // tun0 or wg0 for example
Interface string // tun0 for example
}
type StartDataGetterSetter interface {