mirror of
https://github.com/qdm12/gluetun.git
synced 2025-12-12 18:32:13 -06:00
33 lines
845 B
Go
33 lines
845 B
Go
package wireguard
|
|
|
|
import "github.com/qdm12/gluetun/internal/netlink"
|
|
|
|
//go:generate mockgen -destination=netlinker_mock_test.go -package wireguard . NetLinker
|
|
|
|
type NetLinker interface {
|
|
AddrReplace(link netlink.Link, addr netlink.Addr) error
|
|
Router
|
|
Ruler
|
|
Linker
|
|
IsWireguardSupported() (ok bool, err error)
|
|
}
|
|
|
|
type Router interface {
|
|
RouteList(family int) (routes []netlink.Route, err error)
|
|
RouteAdd(route netlink.Route) error
|
|
}
|
|
|
|
type Ruler interface {
|
|
RuleAdd(rule netlink.Rule) error
|
|
RuleDel(rule netlink.Rule) error
|
|
}
|
|
|
|
type Linker interface {
|
|
LinkAdd(link netlink.Link) (linkIndex int, err error)
|
|
LinkList() (links []netlink.Link, err error)
|
|
LinkByName(name string) (link netlink.Link, err error)
|
|
LinkSetUp(link netlink.Link) (linkIndex int, err error)
|
|
LinkSetDown(link netlink.Link) error
|
|
LinkDel(link netlink.Link) error
|
|
}
|