ccae473783
Eliminate Windows warnings.
2015-11-12 16:51:33 -08:00
94f4316a0e
Fix for possible high CPU usage on multicast queries.
2015-11-09 14:54:05 -08:00
5f39d5b7ea
Further pare down Cluster messaging and rename some stuff.
2015-11-06 14:37:17 -08:00
8ef4edebbf
Deferred decode for HELLO to prevent HELLOcalypse under high load of new peers.
2015-11-05 12:22:58 -08:00
7fbe2f7adf
Tweak some more timings for better reliability.
2015-11-02 15:38:53 -08:00
60ce886605
Tweak some timings for better reliability.
2015-11-02 15:15:20 -08:00
a994573a43
Eliminate some more dead code. We may do path trust, but not like that.
2015-10-29 09:42:15 -07:00
16bc3e0398
Factor out RemotePath subclass of Path -- no longer needed, just cruft.
2015-10-27 15:00:16 -07:00
0ffbd05c0e
--wtf; prevent roots from TCP fallback
2015-10-27 12:21:57 -07:00
5ff7733f84
More plumbing of cluster status.
2015-10-26 12:49:17 -07:00
e9648a6cdf
Clarify logic in pinging, and prevent roots from pinging "down."
2015-10-23 14:05:12 -07:00
57e29857cf
Cluster work -- integrating with the rest of the code.
2015-10-20 15:27:53 -07:00
584072fa6a
Fix for V4/V6 stable addressing.
2015-10-19 14:04:36 -07:00
2229e91b57
IPv6 support fixes.
2015-10-16 10:10:12 -07:00
489e1a5b83
Don't keep connections up longer than the alive timeout (unless they are relays or roots)
2015-10-13 13:51:54 -07:00
70d8e3ad94
Expose world ID and world timestamp in ZT_NodeStatus
2015-10-13 12:31:38 -07:00
5d2f523e81
World stuff...
2015-10-13 12:10:44 -07:00
cae58f43f1
More World stuff, and mkworld.
2015-10-13 08:49:36 -07:00
a95fa379cc
Circuit tests basically work but need some tweaks, and fix some issues found with valgrind.
2015-10-09 14:51:38 -07:00
0c498556d5
Unroll Salsa20 fully for a little more speed (non-SSE now almost as fast as SSE)
2015-10-09 09:39:27 -07:00
9347d6c866
Make it so ZeroTierOne.h can be used with a C compiler again.
2015-10-07 18:04:40 -07:00
1b2cac0cc5
Trim some cruft that is not used and probably never would be.
2015-10-07 09:38:33 -07:00
3593fb3462
Send initial CIRCUIT_TEST packet.
2015-10-06 15:16:41 -07:00
d3f29d09e8
Plumbing through circuit test stuff.
2015-10-06 14:42:51 -07:00
f69454ec98
(1) Make ZT_ naming convention consistent (get rid of ZT1_), (2) Make local interface a full sockaddr_storage instead of an int identifier, which turns out to be better for multi-homing and other uses.
2015-09-24 16:21:36 -07:00
2a527ea82e
Fix for timer jitter problem.
2015-09-23 14:01:41 -07:00
367ffde00c
Plumb through localInterfaceId to track local interfaces corresponding with remote addresses.
2015-09-23 13:49:56 -07:00
3a959a7763
Swap out std::map<> for Hashtable<> for main peer database in Topology. (ongoing std::map-ectomy)
2015-09-04 12:14:21 -07:00
5fcef91278
Ignore old root-topology if present -- fix for upgrading on Linux and possibly elsewhere.
2015-08-25 09:42:37 -07:00
7a15d8a7e3
Fix leaving of networks to actually call Network::destroy().
2015-07-24 14:50:44 -07:00
0b354803f3
Clean up some YAGNI issues with implementation of GitHub issue #180 , and make best path choice aware of path rank.
2015-07-13 10:03:04 -07:00
3f567a07ca
Save a little bit of RAM by getting rid of overkill CMWC4096 non-crypto PRNG and replacing it with a simple non-crypto PRNG that just uses Salsa20.
2015-07-07 10:49:50 -07:00
c863ff3f02
A bunch of comments and cleanup, including some to yesterday's direct path pushing changes. Move path viability check to one place, and stop trying to use link-local addresses since they are not reliable.
2015-07-07 08:54:48 -07:00
235f4762b7
Plumbing for local interface addresses -- GitHub issue #180
2015-07-06 15:51:04 -07:00
79e9a8bcc2
Almost everything for GitHub issue #180 except direct path map setup.
2015-07-06 15:28:48 -07:00
93bb934d4e
Some cleanup, docs, and Path -> Path > RemotePath refactor.
2015-07-06 14:08:13 -07:00
dbee1b38b3
Fix semantics of std::unique() to actually remove duplicates (hidden memory leak?)
2015-06-29 10:21:28 -07:00
c287ae4d1d
Redo conversion of _networks to a vector. Just use a simple linear search and put the nwid in a pair with the pointer so linear search can be done without pointer chasing. This should be the fastest option for anything less than dozens of networks, and should save memory over the old map.
2015-06-26 11:38:31 -07:00
4aa8449fe1
Merge branch '_networks_vector' of https://github.com/mwarning/ZeroTierOne into adamierymenko-dev
2015-06-22 10:34:55 -07:00
787608b568
use _network function to reduce source code complexity
2015-06-20 16:34:19 +02:00
2b04ac5e9b
replace _networks map by vector
...
_networks is usually quite small, using binary search on a vector might be faster comapred to std::map.
This is especially true when using uClibc++, which uses a list.
2015-06-20 16:25:21 +02:00
7bae95836c
Root server terminology cleanup, and tighten up a security check by checking full identity of peers instead of just address.
2015-06-19 10:23:25 -07:00
ecb6a1d84f
docs
2015-06-01 19:12:20 -07:00
5341e32729
Fix to GitHub issue #140 -- network preferred relays. Also go ahead and allow RENDEZVOUS from regular peers.
2015-06-01 19:05:27 -07:00
318c2f025b
Call it _relays since there might be other kinds later.
2015-06-01 17:09:37 -07:00
5bc89034bc
Always ping / contact network preferred relays (if any).
2015-06-01 16:53:58 -07:00
9774f789f2
TCP fallback tunneling is now working. That hurt more than expected.
2015-05-22 14:52:23 -07:00
d9006712f6
Completely factor out "desperation" from the core. I thought of a significantly simpler way to move all of this logic entirely into the containing service, liberating the core from any concern over the nature of its pipe to the outside world.
2015-05-21 15:58:26 -07:00
1213073916
Apple auto-update stuff, now for Windows.
2015-05-20 19:38:49 -07:00
2810cd7c15
Build fixes for G++, building without SQLite3 present, and warning removal.
2015-05-17 23:56:47 +00:00