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

View File

@@ -51,7 +51,7 @@ func (r *Reader) readOpenVPN() (
return openVPN, fmt.Errorf("environment variable OPENVPN_MSSFIX: %w", err) 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() openVPN.ProcessUser, err = r.readOpenVPNProcessUser()
if err != nil { 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) return vpn, fmt.Errorf("cannot read OpenVPN settings: %w", err)
} }
vpn.Wireguard, err = readWireguard() vpn.Wireguard, err = r.readWireguard()
if err != nil { if err != nil {
return vpn, fmt.Errorf("cannot read Wireguard settings: %w", err) return vpn, fmt.Errorf("cannot read Wireguard settings: %w", err)
} }

View File

@@ -9,13 +9,13 @@ import (
"github.com/qdm12/gluetun/internal/configuration/settings" "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() { defer func() {
err = unsetEnvKeys([]string{"WIREGUARD_PRIVATE_KEY", "WIREGUARD_PRESHARED_KEY"}, err) err = unsetEnvKeys([]string{"WIREGUARD_PRIVATE_KEY", "WIREGUARD_PRESHARED_KEY"}, err)
}() }()
wireguard.PrivateKey = envToStringPtr("WIREGUARD_PRIVATE_KEY") wireguard.PrivateKey = envToStringPtr("WIREGUARD_PRIVATE_KEY")
wireguard.PreSharedKey = envToStringPtr("WIREGUARD_PRESHARED_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() wireguard.Addresses, err = readWireguardAddresses()
if err != nil { if err != nil {
return wireguard, err // already wrapped return wireguard, err // already wrapped

View File

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