hotfix(settings): allow public IP outbound subnets but not the unspecified address
This commit is contained in:
@@ -8,7 +8,7 @@ var (
|
||||
ErrCountryNotValid = errors.New("the country specified is not valid")
|
||||
ErrFilepathMissing = errors.New("filepath is missing")
|
||||
ErrFirewallZeroPort = errors.New("cannot have a zero port")
|
||||
ErrFirewallPublicOutboundSubnet = errors.New("outbound subnet is public")
|
||||
ErrFirewallPublicOutboundSubnet = errors.New("outbound subnet has an unspecified address")
|
||||
ErrHostnameNotValid = errors.New("the hostname specified is not valid")
|
||||
ErrISPNotValid = errors.New("the ISP specified is not valid")
|
||||
ErrMinRatioNotValid = errors.New("minimum ratio is not valid")
|
||||
|
||||
@@ -27,7 +27,7 @@ func (f Firewall) validate() (err error) {
|
||||
}
|
||||
|
||||
for _, subnet := range f.OutboundSubnets {
|
||||
if !subnet.Addr().IsPrivate() {
|
||||
if subnet.Addr().IsUnspecified() {
|
||||
return fmt.Errorf("%w: %s", ErrFirewallPublicOutboundSubnet, subnet)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ func Test_Firewall_validate(t *testing.T) {
|
||||
},
|
||||
},
|
||||
errWrapped: ErrFirewallPublicOutboundSubnet,
|
||||
errMessage: "outbound subnet is public: 0.0.0.0/0",
|
||||
errMessage: "outbound subnet has an unspecified address: 0.0.0.0/0",
|
||||
},
|
||||
"public_outbound_subnet": {
|
||||
firewall: Firewall{
|
||||
@@ -45,8 +45,6 @@ func Test_Firewall_validate(t *testing.T) {
|
||||
netip.MustParsePrefix("1.2.3.4/32"),
|
||||
},
|
||||
},
|
||||
errWrapped: ErrFirewallPublicOutboundSubnet,
|
||||
errMessage: "outbound subnet is public: 1.2.3.4/32",
|
||||
},
|
||||
"valid_settings": {
|
||||
firewall: Firewall{
|
||||
|
||||
Reference in New Issue
Block a user