Skip to content

Commit

Permalink
Merge pull request #496 from glazychev-art/upd_netlink
Browse files Browse the repository at this point in the history
Update netlink version
  • Loading branch information
denis-tingaikin authored Jul 4, 2022
2 parents 45bf41b + 32dc705 commit 3d5e980
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 5 deletions.
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ require (
github.com/networkservicemesh/sdk v0.5.1-0.20220629100133-a8211c59d6a6
github.com/pkg/errors v0.9.1
github.com/stretchr/testify v1.7.0
github.com/vishvananda/netlink v1.1.1-0.20220118170537-d6b03fdeb845
github.com/vishvananda/netlink v1.2.1-beta.2.0.20220630165224-c591ada0fb2b
github.com/vishvananda/netns v0.0.0-20211101163701-50045581ed74
go.uber.org/goleak v1.1.12
golang.org/x/sys v0.0.0-20220307203707-22a9840ba4d7
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,8 @@ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXf
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/vishvananda/netlink v1.1.1-0.20220118170537-d6b03fdeb845 h1:bIVwDExax2ZzN6mYF8Az0ms0wg+v/LYA4VI8x1TSQcs=
github.com/vishvananda/netlink v1.1.1-0.20220118170537-d6b03fdeb845/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho=
github.com/vishvananda/netlink v1.2.1-beta.2.0.20220630165224-c591ada0fb2b h1:CyMWBGvc1ZOvUBxW51DVTSIIAeJWWJJs+Ko3ouM/AVI=
github.com/vishvananda/netlink v1.2.1-beta.2.0.20220630165224-c591ada0fb2b/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho=
github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0=
github.com/vishvananda/netns v0.0.0-20211101163701-50045581ed74 h1:gga7acRE695APm9hlsSMoOoE65U4/TcqNj90mc69Rlg=
github.com/vishvananda/netns v0.0.0-20211101163701-50045581ed74/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0=
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,13 +94,16 @@ func create(ctx context.Context, conn *networkservice.Connection, isClient bool)
ch := make(chan netlink.AddrUpdate)
done := make(chan struct{})

if err = netlink.AddrSubscribeAt(targetNetNS, ch, done); err != nil {
if err = netlink.AddrSubscribeWithOptions(ch, done, netlink.AddrSubscribeOptions{
Namespace: &targetNetNS,
ReceiveTimeout: &unix.Timeval{Sec: 1},
}); err != nil {
return errors.Wrapf(err, "failed to subscribe for interface address updates")
}

defer func() {
close(done)
// `ch` should be fully read after the `done` close to prevent goroutine leak in `netlink.AddrSubscribeAt`
// `ch` should be fully read after the `done` close to prevent goroutine leak in `netlink.AddrSubscribeWithOptions`
go func() {
for range ch {
}
Expand Down

0 comments on commit 3d5e980

Please sign in to comment.