summaryrefslogtreecommitdiff
path: root/node
diff options
context:
space:
mode:
Diffstat (limited to 'node')
-rw-r--r--node/Packet.hpp51
-rw-r--r--node/Peer.cpp4
-rw-r--r--node/Peer.hpp2
3 files changed, 31 insertions, 26 deletions
diff --git a/node/Packet.hpp b/node/Packet.hpp
index ef52d87d..8b17bcd0 100644
--- a/node/Packet.hpp
+++ b/node/Packet.hpp
@@ -45,31 +45,34 @@
/**
* Protocol version -- incremented only for major changes
*
- * 1 - 0.2.0 ... 0.2.5
- * 2 - 0.3.0 ... 0.4.5
- * + Added signature and originating peer to multicast frame
- * + Double size of multicast frame bloom filter
- * 3 - 0.5.0 ... 0.6.0
- * + Yet another multicast redesign
- * + New crypto completely changes key agreement cipher
- * 4 - 0.6.0 ... 1.0.6
- * + BREAKING CHANGE: New identity format based on hashcash design
- * 5 - 1.1.0 ... 1.1.5
- * + Supports echo
- * + Supports in-band world (root server definition) updates
- * + Clustering! (Though this will work with protocol v4 clients.)
- * + Otherwise backward compatible with protocol v4
- * 6 - 1.1.5 ... 1.1.10
- * + Network configuration format revisions including binary values
- * 7 - 1.1.10 ... 1.1.17
- * + Introduce trusted paths for local SDN use
- * 8 - 1.1.17 ... 1.2.0
- * + Multipart network configurations for large network configs
- * + Tags and Capabilities
- * + Inline push of CertificateOfMembership deprecated
- * 9 - 1.2.0 ... CURRENT
+ * 1 - 0.2.0 ... 0.2.5
+ * 2 - 0.3.0 ... 0.4.5
+ * + Added signature and originating peer to multicast frame
+ * + Double size of multicast frame bloom filter
+ * 3 - 0.5.0 ... 0.6.0
+ * + Yet another multicast redesign
+ * + New crypto completely changes key agreement cipher
+ * 4 - 0.6.0 ... 1.0.6
+ * + BREAKING CHANGE: New identity format based on hashcash design
+ * 5 - 1.1.0 ... 1.1.5
+ * + Supports echo
+ * + Supports in-band world (root server definition) updates
+ * + Clustering! (Though this will work with protocol v4 clients.)
+ * + Otherwise backward compatible with protocol v4
+ * 6 - 1.1.5 ... 1.1.10
+ * + Network configuration format revisions including binary values
+ * 7 - 1.1.10 ... 1.1.17
+ * + Introduce trusted paths for local SDN use
+ * 8 - 1.1.17 ... 1.2.0
+ * + Multipart network configurations for large network configs
+ * + Tags and Capabilities
+ * + Inline push of CertificateOfMembership deprecated
+ * 9 - 1.2.0 ... 1.2.14
+ * 10 - 1.4.0 ... CURRENT
+ * + Multipath capability and load balancing
+ * + Certificates of Delegation (CoDs) for full root decentralization
*/
-#define ZT_PROTO_VERSION 9
+#define ZT_PROTO_VERSION 10
/**
* Minimum supported protocol version
diff --git a/node/Peer.cpp b/node/Peer.cpp
index b0c7db77..95a26003 100644
--- a/node/Peer.cpp
+++ b/node/Peer.cpp
@@ -650,10 +650,11 @@ void Peer::introduce(void *const tPtr,const int64_t now,const SharedPtr<Peer> &o
}
}
-inline void Peer::processBackgroundPeerTasks(int64_t now)
+inline void Peer::processBackgroundPeerTasks(const int64_t now)
{
// Determine current multipath compatibility with other peer
if ((now - _lastMultipathCompatibilityCheck) >= ZT_PATH_QUALITY_COMPUTE_INTERVAL) {
+ //
// Cache number of available paths so that we can short-circuit multipath logic elsewhere
//
// We also take notice of duplicate paths (same IP only) because we may have
@@ -663,6 +664,7 @@ inline void Peer::processBackgroundPeerTasks(int64_t now)
//
// This is done to support the behavior of auto multipath enable/disable
// without user intervention.
+ //
int currAlivePathCount = 0;
int duplicatePathsFound = 0;
for (unsigned int i=0;i<ZT_MAX_PEER_NETWORK_PATHS;++i) {
diff --git a/node/Peer.hpp b/node/Peer.hpp
index 947d8861..b4cbe057 100644
--- a/node/Peer.hpp
+++ b/node/Peer.hpp
@@ -419,7 +419,7 @@ public:
*
* @param now Current time
*/
- inline void processBackgroundPeerTasks(int64_t now);
+ inline void processBackgroundPeerTasks(const int64_t now);
/**
* Record that the remote peer does have multipath enabled. As is evident by the receipt of a VERB_ACK