summaryrefslogtreecommitdiff
path: root/node/PacketDecoder.cpp
diff options
context:
space:
mode:
authorAdam Ierymenko <adam.ierymenko@gmail.com>2013-09-13 13:35:31 -0400
committerAdam Ierymenko <adam.ierymenko@gmail.com>2013-09-13 13:35:31 -0400
commitd87a1d6b99e8952b4862cf6dc5965f6b5b54bc85 (patch)
tree71e2b7ebafe05eaa98737977f2a754133ec22dcd /node/PacketDecoder.cpp
parent07e1085dccb55b75816faa2c2f4a66c42713f6cc (diff)
downloadinfinitytier-d87a1d6b99e8952b4862cf6dc5965f6b5b54bc85.tar.gz
infinitytier-d87a1d6b99e8952b4862cf6dc5965f6b5b54bc85.zip
Add version info to OK(HELLO) so both sides know their version info.
Diffstat (limited to 'node/PacketDecoder.cpp')
-rw-r--r--node/PacketDecoder.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/node/PacketDecoder.cpp b/node/PacketDecoder.cpp
index 13937a52..67f70554 100644
--- a/node/PacketDecoder.cpp
+++ b/node/PacketDecoder.cpp
@@ -151,11 +151,14 @@ void PacketDecoder::_CBaddPeerFromHello(void *arg,const SharedPtr<Peer> &p,Topol
case Topology::PEER_VERIFY_ACCEPTED_ALREADY_HAVE:
case Topology::PEER_VERIFY_ACCEPTED_DISPLACED_INVALID_ADDRESS: {
_r->sw->doAnythingWaitingForPeer(p);
-
Packet outp(req->source,_r->identity.address(),Packet::VERB_OK);
outp.append((unsigned char)Packet::VERB_HELLO);
outp.append(req->helloPacketId);
outp.append(req->helloTimestamp);
+ outp.append((unsigned char)ZT_PROTO_VERSION);
+ outp.append((unsigned char)ZEROTIER_ONE_VERSION_MAJOR);
+ outp.append((unsigned char)ZEROTIER_ONE_VERSION_MINOR);
+ outp.append((uint16_t)ZEROTIER_ONE_VERSION_REVISION);
outp.encrypt(p->cryptKey());
outp.hmacSet(p->macKey());
_r->demarc->send(req->localPort,req->remoteAddress,outp.data(),outp.size(),-1);