- Move `Addr` and its `String` method to `types.go` - Move `IsWireguardSupported` to `wireguard.go` to have `family.go` OS independant - Remove dependency on vishvananda/netlink in `ipv6.go` - Move `Link` to `types.go` - Move `Route` to `types.go` - Move `Rule` and its `String` method to `types.go`
21 lines
377 B
Go
21 lines
377 B
Go
package netlink
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/vishvananda/netlink"
|
|
)
|
|
|
|
func (n *NetLink) IsWireguardSupported() (ok bool, err error) {
|
|
families, err := netlink.GenlFamilyList()
|
|
if err != nil {
|
|
return false, fmt.Errorf("listing gen 1 families: %w", err)
|
|
}
|
|
for _, family := range families {
|
|
if family.Name == "wireguard" {
|
|
return true, nil
|
|
}
|
|
}
|
|
return false, nil
|
|
}
|