From 1a677ce4f7937a1ae03a207183d32bd5589fd695 Mon Sep 17 00:00:00 2001 From: "Quentin McGaw (desktop)" Date: Mon, 23 Aug 2021 20:50:32 +0000 Subject: [PATCH] Maint: `internal/routing` returns `*Routine` struct --- cmd/gluetun/main.go | 2 +- internal/routing/enable.go | 4 ++-- internal/routing/mutate.go | 8 ++++---- internal/routing/outboundsubnets.go | 8 ++++---- internal/routing/reader.go | 14 +++++++------- internal/routing/routing.go | 10 +++++----- 6 files changed, 23 insertions(+), 23 deletions(-) diff --git a/cmd/gluetun/main.go b/cmd/gluetun/main.go index 1bb1d9d8..6892267b 100644 --- a/cmd/gluetun/main.go +++ b/cmd/gluetun/main.go @@ -234,7 +234,7 @@ func _main(ctx context.Context, buildInfo models.BuildInformation, Prefix: "routing: ", Level: firewallLogLevel, }) - routingConf := routing.NewRouting(routingLogger) + routingConf := routing.New(routingLogger) defaultInterface, defaultGateway, err := routingConf.DefaultRoute() if err != nil { diff --git a/internal/routing/enable.go b/internal/routing/enable.go index 5ef4b669..f963360b 100644 --- a/internal/routing/enable.go +++ b/internal/routing/enable.go @@ -24,7 +24,7 @@ type Setuper interface { Setup() (err error) } -func (r *routing) Setup() (err error) { +func (r *Routing) Setup() (err error) { defaultIP, err := r.DefaultIP() if err != nil { return fmt.Errorf("%w: %s", ErrDefaultIP, err) @@ -67,7 +67,7 @@ type TearDowner interface { TearDown() error } -func (r *routing) TearDown() error { +func (r *Routing) TearDown() error { defaultIP, err := r.DefaultIP() if err != nil { return fmt.Errorf("%w: %s", ErrDefaultIP, err) diff --git a/internal/routing/mutate.go b/internal/routing/mutate.go index 0b32afb0..d09568ed 100644 --- a/internal/routing/mutate.go +++ b/internal/routing/mutate.go @@ -17,7 +17,7 @@ var ( ErrRuleDel = errors.New("cannot delete routing rule") ) -func (r *routing) addRouteVia(destination net.IPNet, gateway net.IP, iface string, table int) error { +func (r *Routing) addRouteVia(destination net.IPNet, gateway net.IP, iface string, table int) error { destinationStr := destination.String() r.logger.Info("adding route for " + destinationStr) r.logger.Debug("ip route replace " + destinationStr + @@ -42,7 +42,7 @@ func (r *routing) addRouteVia(destination net.IPNet, gateway net.IP, iface strin return nil } -func (r *routing) deleteRouteVia(destination net.IPNet, gateway net.IP, iface string, table int) (err error) { +func (r *Routing) deleteRouteVia(destination net.IPNet, gateway net.IP, iface string, table int) (err error) { destinationStr := destination.String() r.logger.Info("deleting route for " + destinationStr) r.logger.Debug("ip route delete " + destinationStr + @@ -67,7 +67,7 @@ func (r *routing) deleteRouteVia(destination net.IPNet, gateway net.IP, iface st return nil } -func (r *routing) addIPRule(src net.IP, table, priority int) error { +func (r *Routing) addIPRule(src net.IP, table, priority int) error { r.logger.Debug("ip rule add from " + src.String() + " lookup " + strconv.Itoa(table) + " pref " + strconv.Itoa(priority)) @@ -97,7 +97,7 @@ func (r *routing) addIPRule(src net.IP, table, priority int) error { return nil } -func (r *routing) deleteIPRule(src net.IP, table, priority int) error { +func (r *Routing) deleteIPRule(src net.IP, table, priority int) error { r.logger.Debug("ip rule del from " + src.String() + " lookup " + strconv.Itoa(table) + " pref " + strconv.Itoa(priority)) diff --git a/internal/routing/outboundsubnets.go b/internal/routing/outboundsubnets.go index e14ebaea..3230d151 100644 --- a/internal/routing/outboundsubnets.go +++ b/internal/routing/outboundsubnets.go @@ -14,7 +14,7 @@ type OutboundRoutesSetter interface { SetOutboundRoutes(outboundSubnets []net.IPNet) error } -func (r *routing) SetOutboundRoutes(outboundSubnets []net.IPNet) error { +func (r *Routing) SetOutboundRoutes(outboundSubnets []net.IPNet) error { defaultInterface, defaultGateway, err := r.DefaultRoute() if err != nil { return err @@ -22,7 +22,7 @@ func (r *routing) SetOutboundRoutes(outboundSubnets []net.IPNet) error { return r.setOutboundRoutes(outboundSubnets, defaultInterface, defaultGateway) } -func (r *routing) setOutboundRoutes(outboundSubnets []net.IPNet, +func (r *Routing) setOutboundRoutes(outboundSubnets []net.IPNet, defaultInterfaceName string, defaultGateway net.IP) error { r.stateMutex.Lock() defer r.stateMutex.Unlock() @@ -38,7 +38,7 @@ func (r *routing) setOutboundRoutes(outboundSubnets []net.IPNet, return r.addOutboundSubnets(subnetsToAdd, defaultInterfaceName, defaultGateway) } -func (r *routing) removeOutboundSubnets(subnets []net.IPNet, +func (r *Routing) removeOutboundSubnets(subnets []net.IPNet, defaultInterfaceName string, defaultGateway net.IP) { for _, subnet := range subnets { const table = 0 @@ -50,7 +50,7 @@ func (r *routing) removeOutboundSubnets(subnets []net.IPNet, } } -func (r *routing) addOutboundSubnets(subnets []net.IPNet, +func (r *Routing) addOutboundSubnets(subnets []net.IPNet, defaultInterfaceName string, defaultGateway net.IP) error { for _, subnet := range subnets { const table = 0 diff --git a/internal/routing/reader.go b/internal/routing/reader.go index 17b786da..89bf98f1 100644 --- a/internal/routing/reader.go +++ b/internal/routing/reader.go @@ -37,7 +37,7 @@ type DefaultRouteGetter interface { DefaultRoute() (defaultInterface string, defaultGateway net.IP, err error) } -func (r *routing) DefaultRoute() (defaultInterface string, defaultGateway net.IP, err error) { +func (r *Routing) DefaultRoute() (defaultInterface string, defaultGateway net.IP, err error) { routes, err := netlink.RouteList(nil, netlink.FAMILY_ALL) if err != nil { return "", nil, fmt.Errorf("%w: %s", ErrRoutesList, err) @@ -64,7 +64,7 @@ type DefaultIPGetter interface { DefaultIP() (defaultIP net.IP, err error) } -func (r *routing) DefaultIP() (ip net.IP, err error) { +func (r *Routing) DefaultIP() (ip net.IP, err error) { routes, err := netlink.RouteList(nil, netlink.FAMILY_ALL) if err != nil { return nil, fmt.Errorf("%w: %s", ErrRoutesList, err) @@ -92,7 +92,7 @@ type LocalSubnetGetter interface { LocalSubnet() (defaultSubnet net.IPNet, err error) } -func (r *routing) LocalSubnet() (defaultSubnet net.IPNet, err error) { +func (r *Routing) LocalSubnet() (defaultSubnet net.IPNet, err error) { routes, err := netlink.RouteList(nil, netlink.FAMILY_ALL) if err != nil { return defaultSubnet, fmt.Errorf("%w: %s", ErrRoutesList, err) @@ -125,7 +125,7 @@ type LocalNetworksGetter interface { LocalNetworks() (localNetworks []LocalNetwork, err error) } -func (r *routing) LocalNetworks() (localNetworks []LocalNetwork, err error) { +func (r *Routing) LocalNetworks() (localNetworks []LocalNetwork, err error) { links, err := netlink.LinkList() if err != nil { return localNetworks, fmt.Errorf("%w: %s", ErrLinkList, err) @@ -187,7 +187,7 @@ func (r *routing) LocalNetworks() (localNetworks []LocalNetwork, err error) { return localNetworks, nil } -func (r *routing) assignedIP(interfaceName string) (ip net.IP, err error) { +func (r *Routing) assignedIP(interfaceName string) (ip net.IP, err error) { iface, err := net.InterfaceByName(interfaceName) if err != nil { return nil, fmt.Errorf("%w: %s: %s", ErrInterfaceNotFound, interfaceName, err) @@ -212,7 +212,7 @@ type VPNDestinationIPGetter interface { VPNDestinationIP() (ip net.IP, err error) } -func (r *routing) VPNDestinationIP() (ip net.IP, err error) { +func (r *Routing) VPNDestinationIP() (ip net.IP, err error) { routes, err := netlink.RouteList(nil, netlink.FAMILY_ALL) if err != nil { return nil, fmt.Errorf("%w: %s", ErrRoutesList, err) @@ -244,7 +244,7 @@ type VPNLocalGatewayIPGetter interface { VPNLocalGatewayIP(vpnIntf string) (ip net.IP, err error) } -func (r *routing) VPNLocalGatewayIP(vpnIntf string) (ip net.IP, err error) { +func (r *Routing) VPNLocalGatewayIP(vpnIntf string) (ip net.IP, err error) { routes, err := netlink.RouteList(nil, netlink.FAMILY_ALL) if err != nil { return nil, fmt.Errorf("%w: %s", ErrRoutesList, err) diff --git a/internal/routing/routing.go b/internal/routing/routing.go index 86246674..a246f49a 100644 --- a/internal/routing/routing.go +++ b/internal/routing/routing.go @@ -8,7 +8,7 @@ import ( "github.com/qdm12/golibs/logging" ) -type Routing interface { +type ReadWriter interface { Reader Writer } @@ -32,15 +32,15 @@ type Writer interface { OutboundRoutesSetter } -type routing struct { +type Routing struct { logger logging.Logger outboundSubnets []net.IPNet stateMutex sync.RWMutex } -// NewRouting creates a new routing instance. -func NewRouting(logger logging.Logger) Routing { - return &routing{ +// New creates a new routing instance. +func New(logger logging.Logger) *Routing { + return &Routing{ logger: logger, } }