fix(firewall): deduplicate VPN address accept rule for multiple default routes with the same network interface
This commit is contained in:
@@ -157,7 +157,13 @@ func (c *Config) allowVPNIP(ctx context.Context) (err error) {
|
||||
}
|
||||
|
||||
const remove = false
|
||||
interfacesSeen := make(map[string]struct{}, len(c.defaultRoutes))
|
||||
for _, defaultRoute := range c.defaultRoutes {
|
||||
_, seen := interfacesSeen[defaultRoute.NetInterface]
|
||||
if seen {
|
||||
continue
|
||||
}
|
||||
interfacesSeen[defaultRoute.NetInterface] = struct{}{}
|
||||
err = c.acceptOutputTrafficToVPN(ctx, defaultRoute.NetInterface, c.vpnConnection, remove)
|
||||
if err != nil {
|
||||
return fmt.Errorf("accepting output traffic through VPN: %w", err)
|
||||
|
||||
Reference in New Issue
Block a user