Compare commits

...

2 Commits

Author SHA1 Message Date
Quentin McGaw
1114981914 wip 2024-11-07 19:55:02 +00:00
Quentin McGaw
4ef0df04aa chore(routing): remove redundant rule ip rule in error messages 2024-11-07 19:50:46 +00:00
7 changed files with 29 additions and 5 deletions

View File

@@ -54,6 +54,7 @@ func (p PortForwarding) Validate(vpnProvider string) (err error) {
providers.PrivateInternetAccess,
providers.Privatevpn,
providers.Protonvpn,
providers.Mullvad,
}
if err = validate.IsOneOf(providerSelected, validProviders...); err != nil {
return fmt.Errorf("%w: %w", ErrPortForwardingEnabled, err)

View File

@@ -0,0 +1,23 @@
package mullvad
import (
"context"
"github.com/qdm12/gluetun/internal/provider/utils"
)
// PortForward obtains a VPN server side port forwarded from ProtonVPN gateway.
func (p *Provider) PortForward(_ context.Context, objects utils.PortForwardObjects) (
port uint16, err error) {
objects.Logger.Debug("mullvad: port forward")
port = 10000
return port, nil
}
func (p *Provider) KeepPortForward(ctx context.Context,
objects utils.PortForwardObjects) (err error) {
objects.Logger.Debug("mullvad: keeping port forward")
<-ctx.Done()
objects.Logger.Debug("mullvad: keeping port forward exiting")
return nil
}

View File

@@ -26,7 +26,7 @@ func (r *Routing) addIPRule(src, dst netip.Prefix, table, priority int) error {
}
if err := r.netLinker.RuleAdd(rule); err != nil {
return fmt.Errorf("adding rule %s: %w", rule, err)
return fmt.Errorf("adding %s: %w", rule, err)
}
return nil
}

View File

@@ -80,7 +80,7 @@ func Test_Routing_addIPRule(t *testing.T) {
ruleToAdd: makeIPRule(makeNetipPrefix(1), makeNetipPrefix(2), 99, 99),
err: errDummy,
},
err: errors.New("adding rule ip rule 99: from 1.1.1.0/24 to 2.2.2.0/24 table 99: dummy error"),
err: errors.New("adding ip rule 99: from 1.1.1.0/24 to 2.2.2.0/24 table 99: dummy error"),
},
"add rule success": {
src: makeNetipPrefix(1),

View File

@@ -118,5 +118,5 @@ func Test_netlink_Wireguard_addRule(t *testing.T) {
_ = nilCleanup() // in case it succeeds
}
require.Error(t, err)
assert.EqualError(t, err, "adding rule ip rule 10000: from all to all table 999: file exists")
assert.EqualError(t, err, "adding ip rule 10000: from all to all table 999: file exists")
}

View File

@@ -16,7 +16,7 @@ func (w *Wireguard) addRule(rulePriority int, firewallMark uint32,
rule.Table = int(firewallMark)
rule.Family = family
if err := w.netlink.RuleAdd(rule); err != nil {
return nil, fmt.Errorf("adding rule %s: %w", rule, err)
return nil, fmt.Errorf("adding %s: %w", rule, err)
}
cleanup = func() error {

View File

@@ -45,7 +45,7 @@ func Test_Wireguard_addRule(t *testing.T) {
Family: family,
},
ruleAddErr: errDummy,
err: errors.New("adding rule ip rule 987: from all to all table 456: dummy"),
err: errors.New("adding ip rule 987: from all to all table 456: dummy"),
},
"rule delete error": {
expectedRule: netlink.Rule{