From 3205e300835b7a71e4d8b380a6a5def77effcbc1 Mon Sep 17 00:00:00 2001 From: lemmi Date: Thu, 23 Jan 2020 04:55:33 +0100 Subject: [PATCH] make linter happy --- main.go | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/main.go b/main.go index b8b8a63..de859be 100644 --- a/main.go +++ b/main.go @@ -16,6 +16,7 @@ import ( "golang.org/x/sys/unix" "github.com/jsimonetti/rtnetlink" + "github.com/lemmi/closer" "github.com/mdlayher/netlink" ) @@ -66,7 +67,7 @@ func newRouteStats() *routeStats { } } -func DstIPNet(rm rtnetlink.RouteMessage) *net.IPNet { +func dstIPNet(rm rtnetlink.RouteMessage) *net.IPNet { var zeros int switch rm.Family { case unix.AF_INET: @@ -86,17 +87,19 @@ func (rs *routeStats) add(rm rtnetlink.RouteMessage) { rs.Lock() defer rs.Unlock() - dst := DstIPNet(rm) + dst := dstIPNet(rm) key := dst.String() r := rs.stats[key] if r == nil { r = &route{Dst: dst} } + r.Counter++ if r.UnreachableSince == nil { t := time.Now() r.UnreachableSince = &t } + rs.stats[key] = r } @@ -104,15 +107,16 @@ func (rs *routeStats) del(rm rtnetlink.RouteMessage) { rs.Lock() defer rs.Unlock() - dst := DstIPNet(rm) + dst := dstIPNet(rm) key := dst.String() r := rs.stats[key] if r == nil { - r = &route{Dst: dst} return } + r.UnreachableDuration += time.Since(*r.UnreachableSince) r.UnreachableSince = nil + rs.stats[key] = r } @@ -157,7 +161,7 @@ func monitor(done <-chan struct{}, rs *routeStats) { go func() { <-done - c.Close() + closer.Do(c) }() if err = c.SetReadBuffer(16 * 1048576); err != nil {