Skip to content

Commit

Permalink
Improve getPeers sorting
Browse files Browse the repository at this point in the history
  • Loading branch information
neilalexander committed Jan 11, 2024
1 parent 1e9a59e commit 768278a
Showing 1 changed file with 9 additions and 3 deletions.
12 changes: 9 additions & 3 deletions src/admin/getpeers.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,10 +56,16 @@ func (a *AdminSocket) getPeersHandler(req *GetPeersRequest, res *GetPeersRespons
res.Peers = append(res.Peers, peer)
}
sort.Slice(res.Peers, func(i, j int) bool {
if res.Peers[i].Port == res.Peers[j].Port {
return res.Peers[i].Priority < res.Peers[j].Priority
if res.Peers[i].Inbound == res.Peers[j].Inbound {
if res.Peers[i].PublicKey == res.Peers[j].PublicKey {
if res.Peers[i].Priority == res.Peers[j].Priority {
return res.Peers[i].Uptime > res.Peers[j].Uptime
}
return res.Peers[i].Priority < res.Peers[j].Priority
}
return res.Peers[i].PublicKey < res.Peers[j].PublicKey
}
return res.Peers[i].Port < res.Peers[j].Port
return !res.Peers[i].Inbound && res.Peers[j].Inbound
})
return nil
}

0 comments on commit 768278a

Please sign in to comment.