mirror of
https://github.com/ZeroTier/ZeroTierOne
synced 2025-07-30 19:40:47 -07:00
RedisNetworkConfigMaster in its own folder. Also fix some hex/decimal Redis database confusion.
This commit is contained in:
parent
78fc62d967
commit
b6fba5934a
4 changed files with 124 additions and 200 deletions
|
@ -632,7 +632,7 @@ bool IncomingPacket::_doNETWORK_CONFIG_REQUEST(const RuntimeEnvironment *RR,cons
|
|||
|
||||
if (RR->netconfMaster) {
|
||||
Dictionary netconf;
|
||||
switch(RR->netconfMaster->doNetworkConfigRequest(_remoteAddress,packetId(),source(),nwid,metaData,haveTimestamp,netconf)) {
|
||||
switch(RR->netconfMaster->doNetworkConfigRequest(_remoteAddress,packetId(),peer->identity(),nwid,metaData,haveTimestamp,netconf)) {
|
||||
case NetworkConfigMaster::NETCONF_QUERY_OK: {
|
||||
std::string netconfStr(netconf.toString());
|
||||
if (netconfStr.length() > 0xffff) { // sanity check since field ix 16-bit
|
||||
|
@ -652,6 +652,8 @@ bool IncomingPacket::_doNETWORK_CONFIG_REQUEST(const RuntimeEnvironment *RR,cons
|
|||
}
|
||||
}
|
||||
} break;
|
||||
case NetworkConfigMaster::NETCONF_QUERY_OK_BUT_NOT_NEWER: // nothing to do -- netconf has not changed
|
||||
break;
|
||||
case NetworkConfigMaster::NETCONF_QUERY_OBJECT_NOT_FOUND: {
|
||||
Packet outp(peer->address(),RR->identity.address(),Packet::VERB_ERROR);
|
||||
outp.append((unsigned char)Packet::VERB_NETWORK_CONFIG_REQUEST);
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
#include "InetAddress.hpp"
|
||||
#include "Dictionary.hpp"
|
||||
#include "Address.hpp"
|
||||
#include "Identity.hpp"
|
||||
|
||||
namespace ZeroTier {
|
||||
|
||||
|
@ -51,9 +52,10 @@ public:
|
|||
enum ResultCode
|
||||
{
|
||||
NETCONF_QUERY_OK = 0,
|
||||
NETCONF_QUERY_OBJECT_NOT_FOUND = 1,
|
||||
NETCONF_QUERY_ACCESS_DENIED = 2,
|
||||
NETCONF_QUERY_INTERNAL_SERVER_ERROR = 3
|
||||
NETCONF_QUERY_OK_BUT_NOT_NEWER = 1,
|
||||
NETCONF_QUERY_OBJECT_NOT_FOUND = 2,
|
||||
NETCONF_QUERY_ACCESS_DENIED = 3,
|
||||
NETCONF_QUERY_INTERNAL_SERVER_ERROR = 4
|
||||
};
|
||||
|
||||
NetworkConfigMaster() {}
|
||||
|
@ -70,7 +72,7 @@ public:
|
|||
*
|
||||
* @param fromAddr Originating IP address
|
||||
* @param packetId 64-bit packet ID
|
||||
* @param member Originating peer ZeroTier address
|
||||
* @param member Originating peer ZeroTier identity
|
||||
* @param nwid 64-bit network ID
|
||||
* @param metaData Meta-data bundled with request (empty if none)
|
||||
* @param haveTimestamp Timestamp sent by requesting peer or 0 if none
|
||||
|
@ -80,7 +82,7 @@ public:
|
|||
virtual NetworkConfigMaster::ResultCode doNetworkConfigRequest(
|
||||
const InetAddress &fromAddr,
|
||||
uint64_t packetId,
|
||||
const Address &member,
|
||||
const Identity &member,
|
||||
uint64_t nwid,
|
||||
const Dictionary &metaData,
|
||||
uint64_t haveTimestamp,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue