chore(deps): upgrade vishvananda/netlink from v1.2.1-beta.2 to v1.2.1

This commit is contained in:
Quentin McGaw
2024-08-23 06:46:29 +00:00
parent 703a546c1d
commit 540acc915d
10 changed files with 24 additions and 22 deletions

4
go.mod
View File

@@ -17,7 +17,7 @@ require (
github.com/qdm12/ss-server v0.6.0 github.com/qdm12/ss-server v0.6.0
github.com/stretchr/testify v1.9.0 github.com/stretchr/testify v1.9.0
github.com/ulikunitz/xz v0.5.11 github.com/ulikunitz/xz v0.5.11
github.com/vishvananda/netlink v1.2.1-beta.2 github.com/vishvananda/netlink v1.2.1
github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a
golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa
golang.org/x/net v0.28.0 golang.org/x/net v0.28.0
@@ -48,7 +48,7 @@ require (
github.com/prometheus/common v0.42.0 // indirect github.com/prometheus/common v0.42.0 // indirect
github.com/prometheus/procfs v0.10.1 // indirect github.com/prometheus/procfs v0.10.1 // indirect
github.com/riobard/go-bloom v0.0.0-20200614022211-cdc8013cb5b3 // indirect github.com/riobard/go-bloom v0.0.0-20200614022211-cdc8013cb5b3 // indirect
github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae // indirect github.com/vishvananda/netns v0.0.4 // indirect
golang.org/x/crypto v0.26.0 // indirect golang.org/x/crypto v0.26.0 // indirect
golang.org/x/mod v0.17.0 // indirect golang.org/x/mod v0.17.0 // indirect
golang.org/x/sync v0.8.0 // indirect golang.org/x/sync v0.8.0 // indirect

12
go.sum
View File

@@ -79,10 +79,10 @@ github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsT
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/ulikunitz/xz v0.5.11 h1:kpFauv27b6ynzBNT/Xy+1k+fK4WswhN/6PN5WhFAGw8= github.com/ulikunitz/xz v0.5.11 h1:kpFauv27b6ynzBNT/Xy+1k+fK4WswhN/6PN5WhFAGw8=
github.com/ulikunitz/xz v0.5.11/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/ulikunitz/xz v0.5.11/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14=
github.com/vishvananda/netlink v1.2.1-beta.2 h1:Llsql0lnQEbHj0I1OuKyp8otXp0r3q0mPkuhwHfStVs= github.com/vishvananda/netlink v1.2.1 h1:pfLv/qlJUwOTPvtWREA7c3PI4u81YkqZw1DYhI2HmLA=
github.com/vishvananda/netlink v1.2.1-beta.2/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= github.com/vishvananda/netlink v1.2.1/go.mod h1:i6NetklAujEcC6fK0JPjT8qSwWyO0HLn4UKG+hGqeJs=
github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae h1:4hwBBUfQCFe3Cym0ZtKyq7L16eZUtYKs+BaHDN6mAns= github.com/vishvananda/netns v0.0.4 h1:Oeaw1EM2JMxD51g9uhtC0D7erkIjgmj8+JZc26m1YX8=
github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= github.com/vishvananda/netns v0.0.4/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM=
github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a h1:fZHgsYlfvtyqToslyjUt3VOPF4J7aK/3MPcK7xp3PDk= github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a h1:fZHgsYlfvtyqToslyjUt3VOPF4J7aK/3MPcK7xp3PDk=
github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a/go.mod h1:ul22v+Nro/R083muKhosV54bj5niojjWZvU8xrevuH4= github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a/go.mod h1:ul22v+Nro/R083muKhosV54bj5niojjWZvU8xrevuH4=
github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
@@ -108,13 +108,13 @@ golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200217220822-9197077df867/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg= golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg=
golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=

View File

@@ -12,7 +12,7 @@ func NewRule() Rule {
// to a `netlink.Rule` // to a `netlink.Rule`
return Rule{ return Rule{
Priority: -1, Priority: -1,
Mark: -1, Mark: 0,
} }
} }

View File

@@ -36,7 +36,7 @@ type Rule struct {
Priority int Priority int
Family int Family int
Table int Table int
Mark int Mark uint32
Src netip.Prefix Src netip.Prefix
Dst netip.Prefix Dst netip.Prefix
Invert bool Invert bool
@@ -44,12 +44,12 @@ type Rule struct {
func (r Rule) String() string { func (r Rule) String() string {
from := "all" from := "all"
if r.Src.IsValid() { if r.Src.IsValid() && !r.Src.Addr().IsUnspecified() {
from = r.Src.String() from = r.Src.String()
} }
to := "all" to := "all"
if r.Dst.IsValid() { if r.Dst.IsValid() && !r.Dst.Addr().IsUnspecified() {
to = r.Dst.String() to = r.Dst.String()
} }

View File

@@ -36,7 +36,7 @@ func (r *Routing) DefaultRoutes() (defaultRoutes []DefaultRoute, err error) {
// ignore non-main table // ignore non-main table
continue continue
} }
if route.Dst.IsValid() { if route.Dst.IsValid() && !route.Dst.Addr().IsUnspecified() {
continue continue
} }
defaultRoute := DefaultRoute{ defaultRoute := DefaultRoute{

View File

@@ -48,7 +48,9 @@ func (r *Routing) LocalNetworks() (localNetworks []LocalNetwork, err error) {
} }
for _, route := range routes { for _, route := range routes {
if route.Table != unix.RT_TABLE_MAIN || route.Gw.IsValid() || !route.Dst.IsValid() { if route.Table != unix.RT_TABLE_MAIN ||
(route.Gw.IsValid() && !route.Gw.IsUnspecified()) ||
(route.Dst.IsValid() && route.Dst.Addr().IsUnspecified()) {
continue continue
} else if _, ok := localLinks[route.LinkIndex]; !ok { } else if _, ok := localLinks[route.LinkIndex]; !ok {
continue continue

View File

@@ -50,7 +50,7 @@ func makeDeviceConfig(settings Settings) (config wgtypes.Config, err error) {
*persistentKeepaliveInterval = settings.PersistentKeepaliveInterval *persistentKeepaliveInterval = settings.PersistentKeepaliveInterval
} }
firewallMark := settings.FirewallMark firewallMark := int(settings.FirewallMark)
config = wgtypes.Config{ config = wgtypes.Config{
PrivateKey: &privateKey, PrivateKey: &privateKey,

View File

@@ -9,7 +9,7 @@ import (
) )
func (w *Wireguard) addRoutes(link netlink.Link, destinations []netip.Prefix, func (w *Wireguard) addRoutes(link netlink.Link, destinations []netip.Prefix,
firewallMark int) (err error) { firewallMark uint32) (err error) {
for _, dst := range destinations { for _, dst := range destinations {
err = w.addRoute(link, dst, firewallMark) err = w.addRoute(link, dst, firewallMark)
if err == nil { if err == nil {
@@ -29,11 +29,11 @@ func (w *Wireguard) addRoutes(link netlink.Link, destinations []netip.Prefix,
} }
func (w *Wireguard) addRoute(link netlink.Link, dst netip.Prefix, func (w *Wireguard) addRoute(link netlink.Link, dst netip.Prefix,
firewallMark int) (err error) { firewallMark uint32) (err error) {
route := netlink.Route{ route := netlink.Route{
LinkIndex: link.Index, LinkIndex: link.Index,
Dst: dst, Dst: dst,
Table: firewallMark, Table: int(firewallMark),
} }
err = w.netlink.RouteAdd(route) err = w.netlink.RouteAdd(route)

View File

@@ -6,13 +6,13 @@ import (
"github.com/qdm12/gluetun/internal/netlink" "github.com/qdm12/gluetun/internal/netlink"
) )
func (w *Wireguard) addRule(rulePriority, firewallMark, family int) ( func (w *Wireguard) addRule(rulePriority int, firewallMark uint32,
cleanup func() error, err error) { family int) (cleanup func() error, err error) {
rule := netlink.NewRule() rule := netlink.NewRule()
rule.Invert = true rule.Invert = true
rule.Priority = rulePriority rule.Priority = rulePriority
rule.Mark = firewallMark rule.Mark = firewallMark
rule.Table = firewallMark rule.Table = int(firewallMark)
rule.Family = family rule.Family = family
if err := w.netlink.RuleAdd(rule); err != nil { if err := w.netlink.RuleAdd(rule); err != nil {
return nil, fmt.Errorf("adding rule %s: %w", rule, err) return nil, fmt.Errorf("adding rule %s: %w", rule, err)

View File

@@ -35,7 +35,7 @@ type Settings struct {
PersistentKeepaliveInterval time.Duration PersistentKeepaliveInterval time.Duration
// FirewallMark to be used in routing tables and IP rules. // FirewallMark to be used in routing tables and IP rules.
// It defaults to 51820 if left to 0. // It defaults to 51820 if left to 0.
FirewallMark int FirewallMark uint32
// Maximum Transmission Unit (MTU) setting for the network interface. // Maximum Transmission Unit (MTU) setting for the network interface.
// It defaults to device.DefaultMTU from wireguard-go which is 1420 // It defaults to device.DefaultMTU from wireguard-go which is 1420
MTU uint16 MTU uint16