summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGrant Limberg <grant.limberg@zerotier.com>2017-09-25 10:10:17 -0700
committerGrant Limberg <grant.limberg@zerotier.com>2017-09-25 10:10:17 -0700
commit6782dee64a71849975c7a6ac88d160bd6f207e3b (patch)
treec8a177757cf5a4853ad6b675695df9b3bd4b971f
parentc666f92e359061c0a4c133ba090832a059298782 (diff)
parent302c15140e90df438988bb648c4c71a5b910fc87 (diff)
downloadinfinitytier-6782dee64a71849975c7a6ac88d160bd6f207e3b.tar.gz
infinitytier-6782dee64a71849975c7a6ac88d160bd6f207e3b.zip
Merge branch 'dev' of http://git.int.zerotier.com/ZeroTier/ZeroTierOne into dev
-rw-r--r--include/ZeroTierOne.h15
-rw-r--r--node/Node.cpp1
2 files changed, 16 insertions, 0 deletions
diff --git a/include/ZeroTierOne.h b/include/ZeroTierOne.h
index 7cbebb32..cf6b21fd 100644
--- a/include/ZeroTierOne.h
+++ b/include/ZeroTierOne.h
@@ -804,6 +804,21 @@ typedef struct
} ipv4;
/**
+ * Integer range match in packet payload
+ *
+ * This allows matching of ranges of integers up to 64 bits wide where
+ * the range is +/- INT32_MAX. It's packed this way so it fits in 16
+ * bytes and doesn't enlarge the overall size of this union.
+ */
+ struct {
+ uint64_t start; // integer range start
+ int32_t delta; // +/- offset from start of integer range end
+ uint16_t idx; // index in packet of integer
+ uint8_t bits; // number of bits in integer (range: 1-64)
+ uint8_t endian; // endianness of integer in packet (0 == big, 1 == little)
+ } intRange;
+
+ /**
* Packet characteristic flags being matched
*/
uint64_t characteristics;
diff --git a/node/Node.cpp b/node/Node.cpp
index 871fb21b..cc076e4d 100644
--- a/node/Node.cpp
+++ b/node/Node.cpp
@@ -563,6 +563,7 @@ uint64_t Node::prng()
ZT_ResultCode Node::setPhysicalPathConfiguration(const struct sockaddr_storage *pathNetwork, const ZT_PhysicalPathConfiguration *pathConfig)
{
+ RR->topology->setPhysicalPathConfiguration(pathNetwork,pathConfig);
return ZT_RESULT_OK;
}