summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--make-linux.mk7
-rw-r--r--make-mac.mk7
-rw-r--r--node/Peer.hpp5
-rw-r--r--node/Topology.cpp13
4 files changed, 24 insertions, 8 deletions
diff --git a/make-linux.mk b/make-linux.mk
index 5de1fbb5..5ea3a35e 100644
--- a/make-linux.mk
+++ b/make-linux.mk
@@ -38,10 +38,13 @@ endif
# "make debug" is a shortcut for this
ifeq ($(ZT_DEBUG),1)
- CFLAGS=-Wall -g -pthread $(INCLUDES) -DZT_TRACE -DZT_LOG_STDOUT $(DEFS)
+# DEFS+=-DZT_TRACE -DZT_LOG_STDOUT
+ CFLAGS=-Wall -g -pthread $(INCLUDES) $(DEFS)
LDFLAGS=
STRIP=echo
- DEFS+=-DZT_TRACE -DZT_LOG_STDOUT
+ # The following line enables optimization for the crypto code, since
+ # C25519 in particular is almost UNUSABLE in heavy testing without it.
+ext/lz4/lz4.o node/Salsa20.o node/SHA512.o node/C25519.o node/Poly1305.o: CFLAGS = -Wall -O2 -ftree-vectorize -pthread $(INCLUDES) $(DEFS)
else
CFLAGS=-Wall -O3 -fPIE -fvisibility=hidden -fstack-protector -pthread $(INCLUDES) -DNDEBUG $(DEFS)
LDFLAGS=-pie -Wl,-z,relro,-z,now
diff --git a/make-mac.mk b/make-mac.mk
index 1c3ed54b..89560e8d 100644
--- a/make-mac.mk
+++ b/make-mac.mk
@@ -24,9 +24,12 @@ DEFS+=-DZT_SALSA20_SSE
# "make debug" is a shortcut for this
ifeq ($(ZT_DEBUG),1)
- CFLAGS=-Wall -g -pthread -DZT_TRACE -DZT_LOG_STDOUT $(INCLUDES) $(DEFS)
+# DEFS+=-DZT_TRACE -DZT_LOG_STDOUT
+ CFLAGS=-Wall -g -pthread $(INCLUDES) $(DEFS)
STRIP=echo
- DEFS+=-DZT_TRACE -DZT_LOG_STDOUT
+ # The following line enables optimization for the crypto code, since
+ # C25519 in particular is almost UNUSABLE in heavy testing without it.
+ext/lz4/lz4.o node/Salsa20.o node/SHA512.o node/C25519.o node/Poly1305.o: CFLAGS = -Wall -O2 -ftree-vectorize -pthread $(INCLUDES) $(DEFS)
else
CFLAGS=-arch i386 -arch x86_64 -Wall -O3 -flto -fPIE -fvectorize -fstack-protector -pthread -mmacosx-version-min=10.6 -DNDEBUG -Wno-unused-private-field $(INCLUDES) $(DEFS)
STRIP=strip
diff --git a/node/Peer.hpp b/node/Peer.hpp
index a24fb7b2..ead14311 100644
--- a/node/Peer.hpp
+++ b/node/Peer.hpp
@@ -50,7 +50,8 @@
#include "NonCopyable.hpp"
#include "Mutex.hpp"
-#define ZT_PEER_SERIALIZATION_VERSION 13
+// Comment out to disable peers.persist
+//#define ZT_PEER_SERIALIZATION_VERSION 13
namespace ZeroTier {
@@ -404,6 +405,7 @@ public:
else return std::pair<InetAddress,InetAddress>();
}
+#ifdef ZT_PEER_SERIALIZATION_VERSION
template<unsigned int C>
inline void serialize(Buffer<C> &b) const
{
@@ -456,6 +458,7 @@ public:
return (p - startAt);
}
+#endif // ZT_PEER_SERIALIZATION_VERSION
private:
void _announceMulticastGroups(const RuntimeEnvironment *RR,uint64_t now);
diff --git a/node/Topology.cpp b/node/Topology.cpp
index 5f8401dd..10e5d9c7 100644
--- a/node/Topology.cpp
+++ b/node/Topology.cpp
@@ -290,6 +290,7 @@ bool Topology::authenticateRootTopology(const Dictionary &rt)
void Topology::_dumpPeers()
{
+#ifdef ZT_PEER_SERIALIZATION_VERSION
Buffer<ZT_PEER_WRITE_BUF_SIZE> buf;
std::string pdpath(RR->homePath + ZT_PATH_SEPARATOR_S + "peers.persist");
Mutex::Lock _l(_activePeers_m);
@@ -335,14 +336,18 @@ void Topology::_dumpPeers()
}
fclose(pd);
- Utils::lockDownFile(pdpath.c_str(),false);
buf.burn();
+
+ Utils::lockDownFile(pdpath.c_str(),false);
+#endif // ZT_PEER_SERIALIZATION_VERSION
}
void Topology::_loadPeers()
{
- Buffer<ZT_PEER_WRITE_BUF_SIZE> buf;
std::string pdpath(RR->homePath + ZT_PATH_SEPARATOR_S + "peers.persist");
+
+#ifdef ZT_PEER_SERIALIZATION_VERSION
+ Buffer<ZT_PEER_WRITE_BUF_SIZE> buf;
Mutex::Lock _l(_activePeers_m);
_activePeers.clear();
@@ -374,8 +379,10 @@ void Topology::_loadPeers()
}
fclose(pd);
- Utils::rm(pdpath);
buf.burn();
+#endif // ZT_PEER_SERIALIZATION_VERSION
+
+ Utils::rm(pdpath);
}
} // namespace ZeroTier