summaryrefslogtreecommitdiff
path: root/node/Node.cpp
diff options
context:
space:
mode:
authorAdam Ierymenko <adam.ierymenko@gmail.com>2015-09-09 09:54:39 -0700
committerAdam Ierymenko <adam.ierymenko@gmail.com>2015-09-09 09:54:39 -0700
commita43c3fbf2e03f99c51383123423d86656ac252bf (patch)
treeba09c5b1de23f36984d7167d6c84c7b7add1e16f /node/Node.cpp
parentca6ec120a9b6b99850c827eec2450f89e2331dca (diff)
parent4fbcad246850d7bf00289b898f4a26065276d6e2 (diff)
downloadinfinitytier-a43c3fbf2e03f99c51383123423d86656ac252bf.tar.gz
infinitytier-a43c3fbf2e03f99c51383123423d86656ac252bf.zip
Merge branch 'adamierymenko-dev' into netcon
Diffstat (limited to 'node/Node.cpp')
-rw-r--r--node/Node.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/node/Node.cpp b/node/Node.cpp
index 534c085d..c8c50d66 100644
--- a/node/Node.cpp
+++ b/node/Node.cpp
@@ -355,7 +355,8 @@ void Node::status(ZT1_NodeStatus *status) const
ZT1_PeerList *Node::peers() const
{
- std::map< Address,SharedPtr<Peer> > peers(RR->topology->allPeers());
+ std::vector< std::pair< Address,SharedPtr<Peer> > > peers(RR->topology->allPeers());
+ std::sort(peers.begin(),peers.end());
char *buf = (char *)::malloc(sizeof(ZT1_PeerList) + (sizeof(ZT1_Peer) * peers.size()));
if (!buf)
@@ -364,7 +365,7 @@ ZT1_PeerList *Node::peers() const
pl->peers = (ZT1_Peer *)(buf + sizeof(ZT1_PeerList));
pl->peerCount = 0;
- for(std::map< Address,SharedPtr<Peer> >::iterator pi(peers.begin());pi!=peers.end();++pi) {
+ for(std::vector< std::pair< Address,SharedPtr<Peer> > >::iterator pi(peers.begin());pi!=peers.end();++pi) {
ZT1_Peer *p = &(pl->peers[pl->peerCount++]);
p->address = pi->second->address().toInt();
p->lastUnicastFrame = pi->second->lastUnicastFrame();