libnetwork/drivers/bridge: internalize ErrInvalidGateway

It's a generic errdefs.ErrInvalidParameter, and the type itself is not
used as sentinel error anywhere.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
Sebastiaan van Stijn
2025-01-28 13:48:42 +01:00
parent 3a9f4e0146
commit 47f6d4e1bc
4 changed files with 9 additions and 13 deletions

View File

@@ -246,7 +246,7 @@ func (c *networkConfiguration) Validate() error {
// If default gw is specified, it must be part of bridge subnet
if c.DefaultGatewayIPv4 != nil {
if !c.AddressIPv4.Contains(c.DefaultGatewayIPv4) {
return &ErrInvalidGateway{}
return errInvalidGateway
}
}
}
@@ -266,7 +266,7 @@ func (c *networkConfiguration) Validate() error {
}
// If a default gw is specified, it must belong to AddressIPv6's subnet
if c.DefaultGatewayIPv6 != nil && !c.AddressIPv6.Contains(c.DefaultGatewayIPv6) {
return &ErrInvalidGateway{}
return errInvalidGateway
}
}

View File

@@ -3,18 +3,14 @@
package bridge
import (
"errors"
"fmt"
"github.com/docker/docker/errdefs"
)
// ErrInvalidGateway is returned when the user provided default gateway (v4/v6) is not valid.
type ErrInvalidGateway struct{}
func (eig *ErrInvalidGateway) Error() string {
return "default gateway ip must be part of the network"
}
// InvalidParameter denotes the type of this error
func (eig *ErrInvalidGateway) InvalidParameter() {}
// errInvalidGateway is returned when the user provided default gateway (v4/v6) is not valid.
var errInvalidGateway = errdefs.InvalidParameter(errors.New("default gateway ip must be part of the network"))
// InvalidNetworkIDError is returned when the passed
// network id for an existing network is not a known id.

View File

@@ -63,7 +63,7 @@ func setupBridgeIPv4(config *networkConfiguration, i *bridgeInterface) error {
func setupGatewayIPv4(config *networkConfiguration, i *bridgeInterface) error {
if !i.bridgeIPv4.Contains(config.DefaultGatewayIPv4) {
return &ErrInvalidGateway{}
return errInvalidGateway
}
if config.Internal {
return types.InvalidParameterErrorf("no gateway can be set on an internal bridge network")

View File

@@ -32,7 +32,7 @@ func setupBridgeIPv6(config *networkConfiguration, i *bridgeInterface) error {
func setupGatewayIPv6(config *networkConfiguration, i *bridgeInterface) error {
if !config.AddressIPv6.Contains(config.DefaultGatewayIPv6) {
return &ErrInvalidGateway{}
return errInvalidGateway
}
// Store requested default gateway