Browse Source

Expose world ID and world timestamp in ZT_NodeStatus

Adam Ierymenko 9 years ago
parent
commit
70d8e3ad94
2 changed files with 12 additions and 0 deletions
  1. 10 0
      include/ZeroTierOne.h
  2. 2 0
      node/Node.cpp

+ 10 - 0
include/ZeroTierOne.h

@@ -275,6 +275,16 @@ typedef struct
 	 */
 	 */
 	uint64_t address;
 	uint64_t address;
 
 
+	/**
+	 * Current world ID
+	 */
+	uint64_t worldId;
+
+	/**
+	 * Current world revision/timestamp
+	 */
+	uint64_t worldTimestamp;
+
 	/**
 	/**
 	 * Public identity in string-serialized form (safe to send to others)
 	 * Public identity in string-serialized form (safe to send to others)
 	 *
 	 *

+ 2 - 0
node/Node.cpp

@@ -345,6 +345,8 @@ uint64_t Node::address() const
 void Node::status(ZT_NodeStatus *status) const
 void Node::status(ZT_NodeStatus *status) const
 {
 {
 	status->address = RR->identity.address().toInt();
 	status->address = RR->identity.address().toInt();
+	status->worldId = RR->topology->worldId();
+	status->worldTimestamp = RR->topology->worldTimestamp();
 	status->publicIdentity = RR->publicIdentityStr.c_str();
 	status->publicIdentity = RR->publicIdentityStr.c_str();
 	status->secretIdentity = RR->secretIdentityStr.c_str();
 	status->secretIdentity = RR->secretIdentityStr.c_str();
 	status->online = _online ? 1 : 0;
 	status->online = _online ? 1 : 0;