From b888e033c075b1f849a5eb27c4b5da52fe3cac32 Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Mon, 13 Apr 2015 18:12:45 -0700 Subject: JSON control plane, almost done... --- node/Node.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'node/Node.cpp') diff --git a/node/Node.cpp b/node/Node.cpp index 0192c49a..d6b799e9 100644 --- a/node/Node.cpp +++ b/node/Node.cpp @@ -317,7 +317,12 @@ ZT1_ResultCode Node::multicastUnsubscribe(uint64_t nwid,uint64_t multicastGroup, return ZT1_RESULT_OK; } -void Node::status(ZT1_NodeStatus *status) +uint64_t Node::address() const +{ + return RR->identity.address().toInt(); +} + +void Node::status(ZT1_NodeStatus *status) const { status->address = RR->identity.address().toInt(); status->publicIdentity = RR->publicIdentityStr.c_str(); @@ -325,7 +330,7 @@ void Node::status(ZT1_NodeStatus *status) status->online = _online ? 1 : 0; } -ZT1_PeerList *Node::peers() +ZT1_PeerList *Node::peers() const { std::map< Address,SharedPtr > peers(RR->topology->allPeers()); @@ -365,7 +370,7 @@ ZT1_PeerList *Node::peers() return pl; } -ZT1_VirtualNetworkConfig *Node::networkConfig(uint64_t nwid) +ZT1_VirtualNetworkConfig *Node::networkConfig(uint64_t nwid) const { Mutex::Lock _l(_networks_m); std::map< uint64_t,SharedPtr >::iterator nw(_networks.find(nwid)); @@ -377,7 +382,7 @@ ZT1_VirtualNetworkConfig *Node::networkConfig(uint64_t nwid) return (ZT1_VirtualNetworkConfig *)0; } -ZT1_VirtualNetworkList *Node::networks() +ZT1_VirtualNetworkList *Node::networks() const { Mutex::Lock _l(_networks_m); @@ -601,6 +606,11 @@ enum ZT1_ResultCode ZT1_Node_multicastUnsubscribe(ZT1_Node *node,uint64_t nwid,u } } +uint64_t ZT1_Node_address(ZT1_Node *node) +{ + return reinterpret_cast(node)->address(); +} + void ZT1_Node_status(ZT1_Node *node,ZT1_NodeStatus *status) { try { -- cgit v1.2.3