ZeroTierOne/node
Adam Ierymenko 2f00ae4fd7 Version 0.6.1: minor bug fix, DBM removal
This version removes the peer DBM present in earlier releases. It is not necessary for
regular clients and has been a source of problems.

There is a long-term identity cache that can be enabled by making a directory called
"iddb.d" in the home folder and restarting ZT1. This is probably something only our
supernodes would need, since regular nodes can easily WHOIS peers they've forgotten
about.

On shutdown, the peer database is dumped to disk. It's then restored on startup.
Peers that have not been used in a while are cleaned out, so this keeps this data
set small.

A DBM may re-appear later if it's needed, but for now it was YAGNI.
2013-10-21 14:22:02 -04:00
..
Address.hpp Bug fixes: inverted sense bug, printf format bug. 2013-10-18 16:27:07 -04:00
Array.hpp Windows compiles! (w/Visual Studio 2012) That's about all it does, but it's a start. 2013-08-12 21:25:36 -04:00
AtomicCounter.hpp New git repository for release - version 0.2.0 tagged 2013-07-04 16:56:19 -04:00
BandwidthAccount.hpp More experimentation with multicast rate. 2013-09-12 17:27:10 -04:00
Buffer.hpp Clean up some stuff, including a few spots where exceptions were not being handled correctly. 2013-10-18 14:16:53 -04:00
C25519.cpp Some API improvements to C25519 in preparation for that thing I woke up thinking about at 4am. 2013-10-05 05:26:38 -04:00
C25519.hpp Hashcash-based identity, work in progress... committing to test speed on other boxes. 2013-10-05 06:00:47 -04:00
CertificateOfMembership.cpp Lots of cleanup, more work on certificates, some security fixes. 2013-10-16 17:47:26 -04:00
CertificateOfMembership.hpp Work in progress... 2013-10-18 12:01:48 -04:00
CMWC4096.hpp Compile fixes, integration of fast PRNG. 2013-07-13 14:28:26 -04:00
Condition.hpp Windows build work: condition, mutex, thread, udp socket... 2013-08-12 16:18:35 -04:00
Constants.hpp Add persistent identity caching for use on supernodes. Activate by just making an iddb.d directory in the ZeroTier home folder. Also clean up some obsolete cruft from makefiles. 2013-10-21 14:12:00 -04:00
Defaults.cpp Blech... moving on! 2013-10-20 15:54:32 -04:00
Defaults.hpp Clean up some stuff, including a few spots where exceptions were not being handled correctly. 2013-10-18 14:16:53 -04:00
Demarc.cpp Clean up some stuff, including a few spots where exceptions were not being handled correctly. 2013-10-18 14:16:53 -04:00
Demarc.hpp Clean up some stuff, including a few spots where exceptions were not being handled correctly. 2013-10-18 14:16:53 -04:00
Dictionary.hpp Some file format cleanup. 2013-09-17 15:46:56 -04:00
EthernetTap.cpp Improve code security posture by replacing sprintf with a safer function. 2013-08-30 17:05:43 -04:00
EthernetTap.hpp More tap work -- DHCP configuration and such. 2013-08-27 15:55:32 -04:00
Identity.cpp And then it turns out to be too slow on a slower 32-bit machine... we do want to do tablets eventually. 2013-10-20 15:46:36 -04:00
Identity.hpp Get rid of DBM, which technically is a case of YAGNI. Supernodes will need a way to save identities, but that can be a different feature. Regular clients do not really need a permanent cache (yet). When/if we do need one we can do it then. Until then it only caused problems. 2013-10-21 10:29:44 -04:00
InetAddress.cpp Some file format cleanup. 2013-09-17 15:46:56 -04:00
InetAddress.hpp Each peer now tracks the last time it announced multicast LIKEs independently and does so frequently enough to prevent expires. Also add a multicast debug facility for use on the testnet. 2013-10-01 16:01:36 -04:00
Logger.cpp ZeroTierOne for Windows binary project, builds and runs and mostly works but still some issues with tap. 2013-08-26 17:22:20 -04:00
Logger.hpp More include formatting cleanup. 2013-09-17 15:53:59 -04:00
MAC.hpp Bug fixes: inverted sense bug, printf format bug. 2013-10-18 16:27:07 -04:00
Multicaster.cpp Multicast propagation is now working from non-supernodes, and working quite well. Time for some more simulation before 0.5.0! 2013-10-02 13:50:42 -04:00
Multicaster.hpp Multicast propagation is now working from non-supernodes, and working quite well. Time for some more simulation before 0.5.0! 2013-10-02 13:50:42 -04:00
MulticastGroup.hpp More work in netconf cleanup. 2013-10-18 11:01:41 -04:00
Mutex.hpp Windows build work: condition, mutex, thread, udp socket... 2013-08-12 16:18:35 -04:00
Network.cpp Peers are now dumped on shutdown in a persistence cache and reloaded on startup, which is good enough for clients right now. Supernodes will get something else for long-term authoritative identity caching. 2013-10-21 11:15:47 -04:00
Network.hpp Work in progress... 2013-10-18 12:01:48 -04:00
NetworkConfig.cpp Forgot to set defaults if multicast parameters are unset. 2013-10-18 15:50:31 -04:00
NetworkConfig.hpp Clean up the awful Network::Config mess and break that out into NetworkConfig. 2013-10-18 13:20:34 -04:00
Node.cpp Add persistent identity caching for use on supernodes. Activate by just making an iddb.d directory in the ZeroTier home folder. Also clean up some obsolete cruft from makefiles. 2013-10-21 14:12:00 -04:00
Node.hpp Add port and control port command line options to daemon and command line client, add new supernode keys to Defaults. 2013-09-17 14:47:48 -04:00
NodeConfig.cpp Add persistent identity caching for use on supernodes. Activate by just making an iddb.d directory in the ZeroTier home folder. Also clean up some obsolete cruft from makefiles. 2013-10-21 14:12:00 -04:00
NodeConfig.hpp Clean up some stuff, including a few spots where exceptions were not being handled correctly. 2013-10-18 14:16:53 -04:00
NonCopyable.hpp New git repository for release - version 0.2.0 tagged 2013-07-04 16:56:19 -04:00
Packet.cpp Take the 0.6.0 opportunity to add flags to a few protocol verbs and do a bit more cleanup. Also fix it so certificates wont be accepted unless they are newer than existing ones. 2013-10-17 06:41:52 -04:00
Packet.hpp Make Salsa20 variable-round, allowing for Salsa20/12 to be used for Packet encrypt and decrypt. Profiling analysis found that Salsa20 encrypt was accounting for a nontrivial percentage of CPU time, so it makes sense to cut this load fundamentally. There are no published attacks against Salsa20/12, and DJB believes 20 rounds to be overkill. This should be more than enough for our needs. Obviously incorporating ASM Salsa20 is among the next steps for performance. 2013-10-18 17:39:48 -04:00
PacketDecoder.cpp Version 0.6.1: minor bug fix, DBM removal 2013-10-21 14:22:02 -04:00
PacketDecoder.hpp Clean up some stuff, including a few spots where exceptions were not being handled correctly. 2013-10-18 14:16:53 -04:00
Peer.cpp Get rid of DBM, which technically is a case of YAGNI. Supernodes will need a way to save identities, but that can be a different feature. Regular clients do not really need a permanent cache (yet). When/if we do need one we can do it then. Until then it only caused problems. 2013-10-21 10:29:44 -04:00
Peer.hpp Peers are now dumped on shutdown in a persistence cache and reloaded on startup, which is good enough for clients right now. Supernodes will get something else for long-term authoritative identity caching. 2013-10-21 11:15:47 -04:00
Poly1305.cpp Work in progress... 2013-09-25 10:55:27 -04:00
Poly1305.hpp Test vectors for all new crypto. 2013-09-15 10:41:52 -04:00
RuntimeEnvironment.hpp More work in progress in new multicast propagation... 2013-09-25 17:41:49 -04:00
Salsa20.cpp Make Salsa20 variable-round, allowing for Salsa20/12 to be used for Packet encrypt and decrypt. Profiling analysis found that Salsa20 encrypt was accounting for a nontrivial percentage of CPU time, so it makes sense to cut this load fundamentally. There are no published attacks against Salsa20/12, and DJB believes 20 rounds to be overkill. This should be more than enough for our needs. Obviously incorporating ASM Salsa20 is among the next steps for performance. 2013-10-18 17:39:48 -04:00
Salsa20.hpp Make Salsa20 variable-round, allowing for Salsa20/12 to be used for Packet encrypt and decrypt. Profiling analysis found that Salsa20 encrypt was accounting for a nontrivial percentage of CPU time, so it makes sense to cut this load fundamentally. There are no published attacks against Salsa20/12, and DJB believes 20 rounds to be overkill. This should be more than enough for our needs. Obviously incorporating ASM Salsa20 is among the next steps for performance. 2013-10-18 17:39:48 -04:00
Service.cpp Move template parameter in Thread to a more logical scope location. 2013-08-08 09:19:36 -04:00
Service.hpp Move template parameter in Thread to a more logical scope location. 2013-08-08 09:19:36 -04:00
SHA512.cpp Hashcash-based identity, work in progress... committing to test speed on other boxes. 2013-10-05 06:00:47 -04:00
SHA512.hpp Add new crypto: SHA512 and C25519 -- not integrated yet. 2013-09-13 15:47:00 -04:00
SharedPtr.hpp Windows compiles! (w/Visual Studio 2012) That's about all it does, but it's a start. 2013-08-12 21:25:36 -04:00
Switch.cpp Clean up the awful Network::Config mess and break that out into NetworkConfig. 2013-10-18 13:20:34 -04:00
Switch.hpp Get rid of not used and maybe never to be used Filter code. 2013-10-17 13:07:53 -04:00
SysEnv.cpp Oops we needed _r in there... 2013-10-18 15:00:55 -04:00
SysEnv.hpp Oops we needed _r in there... 2013-10-18 15:00:55 -04:00
Thread.hpp Windows build work: condition, mutex, thread, udp socket... 2013-08-12 16:18:35 -04:00
Topology.cpp Add persistent identity caching for use on supernodes. Activate by just making an iddb.d directory in the ZeroTier home folder. Also clean up some obsolete cruft from makefiles. 2013-10-21 14:12:00 -04:00
Topology.hpp Add persistent identity caching for use on supernodes. Activate by just making an iddb.d directory in the ZeroTier home folder. Also clean up some obsolete cruft from makefiles. 2013-10-21 14:12:00 -04:00
UdpSocket.cpp Tap now basically sorta works on Windows. Now have to figure out how to control DHCP behavior since we normally don't want that. 2013-08-27 11:15:14 -04:00
UdpSocket.hpp ZeroTierOne for Windows binary project, builds and runs and mostly works but still some issues with tap. 2013-08-26 17:22:20 -04:00
Utils.cpp Rest of work on new hashcash based identity scheme. 2013-10-05 07:00:55 -04:00
Utils.hpp Rest of work on new hashcash based identity scheme. 2013-10-05 07:00:55 -04:00