mirror of
https://github.com/qdm12/gluetun.git
synced 2026-05-06 20:10:11 +02:00
hotfix(amneziawg): fix errors (#3240)
This commit is contained in:
@@ -518,7 +518,8 @@ func (ss *ServerSelection) read(r *reader.Reader,
|
||||
return err
|
||||
}
|
||||
|
||||
err = ss.Wireguard.read(r)
|
||||
amneziawg := ss.VPN == vpn.AmneziaWg
|
||||
err = ss.Wireguard.read(r, amneziawg)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -152,18 +152,22 @@ func (w WireguardSelection) toLinesNode() (node *gotree.Node) {
|
||||
return node
|
||||
}
|
||||
|
||||
func (w *WireguardSelection) read(r *reader.Reader) (err error) {
|
||||
w.EndpointIP, err = r.NetipAddr("WIREGUARD_ENDPOINT_IP", reader.RetroKeys("VPN_ENDPOINT_IP"))
|
||||
func (w *WireguardSelection) read(r *reader.Reader, amneziaWG bool) (err error) {
|
||||
prefix := "WIREGUARD"
|
||||
if amneziaWG {
|
||||
prefix = "AMNEZIAWG"
|
||||
}
|
||||
w.EndpointIP, err = r.NetipAddr(prefix+"_ENDPOINT_IP", reader.RetroKeys("VPN_ENDPOINT_IP"))
|
||||
if err != nil {
|
||||
return fmt.Errorf("%w - note this MUST be an IP address, "+
|
||||
"see https://github.com/qdm12/gluetun/issues/788", err)
|
||||
}
|
||||
|
||||
w.EndpointPort, err = r.Uint16Ptr("WIREGUARD_ENDPOINT_PORT", reader.RetroKeys("VPN_ENDPOINT_PORT"))
|
||||
w.EndpointPort, err = r.Uint16Ptr(prefix+"_ENDPOINT_PORT", reader.RetroKeys("VPN_ENDPOINT_PORT"))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
w.PublicKey = r.String("WIREGUARD_PUBLIC_KEY", reader.ForceLowercase(false))
|
||||
w.PublicKey = r.String(prefix+"_PUBLIC_KEY", reader.ForceLowercase(false))
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ func MaxTheoreticalVPNMTU(vpnType, network string, vpnGateway netip.Addr) uint32
|
||||
panic("unknown network protocol: " + network)
|
||||
}
|
||||
switch vpnType {
|
||||
case vpn.Wireguard:
|
||||
case vpn.Wireguard, vpn.AmneziaWg:
|
||||
vpnLinkMTU -= pconstants.WireguardHeaderLength
|
||||
case vpn.OpenVPN:
|
||||
vpnLinkMTU -= pconstants.OpenVPNHeaderMaxLength
|
||||
|
||||
@@ -19,7 +19,7 @@ func (p *Provider) GetConnection(selection settings.ServerSelection, _ bool) (
|
||||
switch selection.VPN {
|
||||
case vpn.OpenVPN:
|
||||
return getOpenVPNConnection(p.extractor, selection)
|
||||
case vpn.Wireguard:
|
||||
case vpn.Wireguard, vpn.AmneziaWg:
|
||||
return getWireguardConnection(selection), nil
|
||||
default:
|
||||
return connection, fmt.Errorf("%w: %s", ErrVPNTypeNotSupported, selection.VPN)
|
||||
|
||||
@@ -30,7 +30,7 @@ func pickConnection(connections []models.Connection,
|
||||
switch selection.VPN {
|
||||
case vpn.OpenVPN:
|
||||
targetIP = selection.OpenVPN.EndpointIP
|
||||
case vpn.Wireguard:
|
||||
case vpn.Wireguard, vpn.AmneziaWg:
|
||||
targetIP = selection.Wireguard.EndpointIP
|
||||
default:
|
||||
panic("unknown VPN type: " + selection.VPN)
|
||||
|
||||
Reference in New Issue
Block a user