diff options
author | Adam Ierymenko <adam.ierymenko@gmail.com> | 2015-04-01 19:15:21 -0700 |
---|---|---|
committer | Adam Ierymenko <adam.ierymenko@gmail.com> | 2015-04-01 19:15:21 -0700 |
commit | 0214dbc27795e9e87bad059397238489b84a5cdc (patch) | |
tree | 65e1a9a77405a6feb7b1bbe7dac1d26f369851bb | |
parent | 1f28ce398078eff39081ef25e7c1e234dd6f8fc2 (diff) | |
download | infinitytier-0214dbc27795e9e87bad059397238489b84a5cdc.tar.gz infinitytier-0214dbc27795e9e87bad059397238489b84a5cdc.zip |
More cleanup.
-rw-r--r-- | node/Network.cpp | 37 | ||||
-rw-r--r-- | node/Network.hpp | 10 |
2 files changed, 15 insertions, 32 deletions
diff --git a/node/Network.cpp b/node/Network.cpp index 0e67471b..8cf022a9 100644 --- a/node/Network.cpp +++ b/node/Network.cpp @@ -100,15 +100,28 @@ Network::Network(const RuntimeEnvironment *renv,uint64_t nwid) : Network::~Network() { + char n[128]; if (_destroyed) { - char n[128]; Utils::snprintf(n,sizeof(n),"networks.d/%.16llx.conf",_id); RR->node->dataStoreDelete(n); Utils::snprintf(n,sizeof(n),"networks.d/%.16llx.mcerts",_id); RR->node->dataStoreDelete(n); } else { clean(); - _dumpMembershipCerts(); + + std::string buf("ZTMCD0"); + Utils::snprintf(n,sizeof(n),"networks.d/%.16llx.mcerts",_id); + Mutex::Lock _l(_lock); + + if ((!_config)||(_config.isPublic())||(_membershipCertificates.size() == 0)) { + RR->node->dataStoreDelete(n); + return; + } + + for(std::map<Address,CertificateOfMembership>::iterator c(_membershipCertificates.begin());c!=_membershipCertificates.end();++c) + c->second.serialize2(buf); + + RR->node->dataStorePut(n,buf,true); } } @@ -420,24 +433,4 @@ void Network::destroy() _tap = (EthernetTap *)0; } -void Network::_dumpMembershipCerts() -{ - char n[128]; - std::string buf("ZTMCD0"); - - Utils::snprintf(n,sizeof(n),"networks.d/%.16llx.mcerts",_id); - - Mutex::Lock _l(_lock); - - if ((!_config)||(_config.isPublic())||(_membershipCertificates.size() == 0)) { - RR->node->dataStoreDelete(n); - return; - } - - for(std::map<Address,CertificateOfMembership>::iterator c(_membershipCertificates.begin());c!=_membershipCertificates.end();++c) - c->second.serialize2(buf); - - RR->node->dataStorePut(n,buf,true); -} - } // namespace ZeroTier diff --git a/node/Network.hpp b/node/Network.hpp index c4906818..c9e62128 100644 --- a/node/Network.hpp +++ b/node/Network.hpp @@ -335,16 +335,6 @@ public: void destroy(); private: - void _dumpMembershipCerts(); - - inline void _mkNetworkFriendlyName(char *buf,unsigned int len) - { - // assumes _lock is locked - if (_config) - Utils::snprintf(buf,len,"ZeroTier One [%s]",_config->name().c_str()); - else Utils::snprintf(buf,len,"ZeroTier One [%.16llx]",(unsigned long long)_id); - } - const RuntimeEnvironment *RR; uint64_t _id; MAC _mac; // local MAC address |