From d9f4d6c1cc79a0d6487fb4d66bbf5435d9f9f5dc Mon Sep 17 00:00:00 2001 From: Michael Crosby Date: Mon, 21 Sep 2015 11:54:35 -0700 Subject: [PATCH] Fix netlink dependency with new pkg Signed-off-by: Michael Crosby Upstream-commit: d0fdc3b5dfa951870f4a7c0a08dea8c1bc68a31b Component: engine --- components/engine/daemon/daemon.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/components/engine/daemon/daemon.go b/components/engine/daemon/daemon.go index 65fbfbb2e9..8cb227583b 100644 --- a/components/engine/daemon/daemon.go +++ b/components/engine/daemon/daemon.go @@ -10,6 +10,7 @@ import ( "fmt" "io" "io/ioutil" + "net" "os" "path/filepath" "regexp" @@ -52,7 +53,7 @@ import ( "github.com/docker/docker/volume/local" "github.com/docker/docker/volume/store" "github.com/docker/libnetwork" - "github.com/opencontainers/runc/libcontainer/netlink" + "github.com/vishvananda/netlink" ) var ( @@ -1078,13 +1079,18 @@ var errNoDefaultRoute = errors.New("no default route was found") // getDefaultRouteMtu returns the MTU for the default route's interface. func getDefaultRouteMtu() (int, error) { - routes, err := netlink.NetworkGetRoutes() + routes, err := netlink.RouteList(nil, 0) if err != nil { return 0, err } for _, r := range routes { - if r.Default && r.Iface != nil { - return r.Iface.MTU, nil + // a nil Dst means that this is the default route. + if r.Dst == nil { + i, err := net.InterfaceByIndex(r.LinkIndex) + if err != nil { + continue + } + return i.MTU, nil } } return 0, errNoDefaultRoute