diff --git a/route/bgp.go b/route/bgp.go index e56b140b4bea79f00125a020c5f05b61aceb7279..847964f913645397ffbab534c73cafd3f7b0d9c9 100644 --- a/route/bgp.go +++ b/route/bgp.go @@ -77,6 +77,14 @@ func (b *BGPPath) Compare(c *BGPPath) int8 { return -1 } + if c.NextHop < b.NextHop { + return 1 + } + + if c.NextHop > b.NextHop { + return -1 + } + return 0 } @@ -132,10 +140,6 @@ func (b *BGPPath) better(c *BGPPath) bool { return false } -func (b *BGPPath) ecmp(c *BGPPath) bool { - return b.LocalPref == c.LocalPref && b.ASPathLen == c.ASPathLen && b.Origin == c.Origin && b.MED == c.MED -} - func (b *BGPPath) Print() string { origin := "" switch b.Origin {