Maint: internal/routing uses internal/netlink

This commit is contained in:
Quentin McGaw (desktop)
2021-08-23 20:56:10 +00:00
parent 7907146aaf
commit ee82a85543
10 changed files with 95 additions and 33 deletions

View File

@@ -2,6 +2,12 @@ package netlink
import "github.com/vishvananda/netlink"
var _ Addresser = (*NetLink)(nil)
type Addresser interface {
AddrAdd(link netlink.Link, addr *netlink.Addr) error
}
func (n *NetLink) AddrAdd(link netlink.Link, addr *netlink.Addr) error {
return netlink.AddrAdd(link, addr)
}

View File

@@ -1,14 +1,10 @@
package netlink
import "github.com/vishvananda/netlink"
//go:generate mockgen -destination=mock_$GOPACKAGE/$GOFILE . NetLinker
var _ NetLinker = (*NetLink)(nil)
type NetLinker interface {
AddrAdd(link netlink.Link, addr *netlink.Addr) error
RouteAdd(route *netlink.Route) error
RuleAdd(rule *netlink.Rule) error
RuleDel(rule *netlink.Rule) error
Addresser
Linker
Router
Ruler
}

23
internal/netlink/link.go Normal file
View File

@@ -0,0 +1,23 @@
package netlink
import "github.com/vishvananda/netlink"
var _ Linker = (*NetLink)(nil)
type Linker interface {
LinkList() (links []netlink.Link, err error)
LinkByName(name string) (link netlink.Link, err error)
LinkByIndex(index int) (link netlink.Link, err error)
}
func (n *NetLink) LinkList() (links []netlink.Link, err error) {
return netlink.LinkList()
}
func (n *NetLink) LinkByName(name string) (link netlink.Link, err error) {
return netlink.LinkByName(name)
}
func (n *NetLink) LinkByIndex(index int) (link netlink.Link, err error) {
return netlink.LinkByIndex(index)
}

View File

@@ -2,6 +2,29 @@ package netlink
import "github.com/vishvananda/netlink"
var _ Router = (*NetLink)(nil)
type Router interface {
RouteList(link netlink.Link, family int) (
routes []netlink.Route, err error)
RouteAdd(route *netlink.Route) error
RouteDel(route *netlink.Route) error
RouteReplace(route *netlink.Route) error
}
func (n *NetLink) RouteList(link netlink.Link, family int) (
routes []netlink.Route, err error) {
return netlink.RouteList(link, family)
}
func (n *NetLink) RouteAdd(route *netlink.Route) error {
return netlink.RouteAdd(route)
}
func (n *NetLink) RouteDel(route *netlink.Route) error {
return netlink.RouteDel(route)
}
func (n *NetLink) RouteReplace(route *netlink.Route) error {
return netlink.RouteReplace(route)
}

View File

@@ -2,6 +2,18 @@ package netlink
import "github.com/vishvananda/netlink"
var _ Ruler = (*NetLink)(nil)
type Ruler interface {
RuleList(family int) (rules []netlink.Rule, err error)
RuleAdd(rule *netlink.Rule) error
RuleDel(rule *netlink.Rule) error
}
func (n *NetLink) RuleList(family int) (rules []netlink.Rule, err error) {
return netlink.RuleList(family)
}
func (n *NetLink) RuleAdd(rule *netlink.Rule) error {
return netlink.RuleAdd(rule)
}