From 0214dbc27795e9e87bad059397238489b84a5cdc Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Wed, 1 Apr 2015 19:15:21 -0700 Subject: More cleanup. --- node/Network.cpp | 37 +++++++++++++++---------------------- 1 file changed, 15 insertions(+), 22 deletions(-) (limited to 'node/Network.cpp') 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::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::iterator c(_membershipCertificates.begin());c!=_membershipCertificates.end();++c) - c->second.serialize2(buf); - - RR->node->dataStorePut(n,buf,true); -} - } // namespace ZeroTier -- cgit v1.2.3