diff --git a/route_linux.go b/route_linux.go index 02f4de3..5db8f1d 100644 --- a/route_linux.go +++ b/route_linux.go @@ -1004,8 +1004,10 @@ func (h *Handle) RouteList(link Link, family int) ([]Route, error) { routeFilter := &Route{} if link != nil { routeFilter.LinkIndex = link.Attrs().Index + + return h.RouteListFiltered(family, routeFilter, RT_FILTER_OIF) } - return h.RouteListFiltered(family, routeFilter, RT_FILTER_OIF) + return h.RouteListFiltered(family, routeFilter, 0) } // RouteListFiltered gets a list of routes in the system filtered with specified rules. diff --git a/route_test.go b/route_test.go index 9accbf3..649f8a0 100644 --- a/route_test.go +++ b/route_test.go @@ -49,6 +49,14 @@ func TestRouteAddDel(t *testing.T) { t.Fatal("Route not added properly") } + routes, err = RouteList(nil, FAMILY_V4) + if err != nil { + t.Fatal(err) + } + if len(routes) != 1 { + t.Fatal("Route not listed properly") + } + dstIP := net.IPv4(192, 168, 0, 42) routeToDstIP, err := RouteGet(dstIP) if err != nil {