|
a2821e9000
|
Add code to check external surface against reported surface from other trusted peers, and also rename ExternalSurface to SelfAwareness because lulz.
|
2015-04-06 20:17:21 -07:00 |
|
|
ee0f56355b
|
Send path simplification.
|
2015-04-03 13:14:37 -07:00 |
|
|
a69e1876f1
|
The concept of link desperation (escalating to less desirable transports) simplifies a ton of stuff. Loads of spaghetti logic can die since we no longer have to make these decisions down in the core.
|
2015-04-02 17:54:56 -07:00 |
|
|
93012b0ee5
|
Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware]
|
2015-02-17 13:11:34 -08:00 |
|
|
eeed31b396
|
Ping supernodes on surface change, and also reset TCP flag.
|
2015-02-02 17:02:23 -08:00 |
|
|
37d23336ed
|
Surface logic in Topology.
|
2015-02-02 16:23:26 -08:00 |
|
|
61cff47f5b
|
Code to track externally visible address surface.
|
2015-02-02 15:24:05 -08:00 |
|
|
4e95384ad6
|
Cleanup, add tristate to config code in Network, and happy new year!
|
2015-01-05 17:47:59 -08:00 |
|
|
74f36f5dc0
|
Windows build fixes.
|
2014-10-19 12:56:39 -07:00 |
|
|
a8bd8fff93
|
Make several changes to eliminate potential deadlock or recursive lock conditions, and add back rescan of multicast groups on network startup.
|
2014-10-14 16:38:27 -07:00 |
|
|
2416491cbc
|
Permanently retire peers.persist, but make iddb.d always enabled instead since identities are what we really want to cache.
|
2014-10-13 14:12:51 -07:00 |
|
|
e1882b614b
|
Some cleanup, Multicaster now sends multicasts as it gets additional members.
|
2014-10-01 14:05:25 -07:00 |
|
|
81b12b6826
|
Rename the ubiquitous _r pointer to RuntimeEnvironment to RR just to be a little more consistent about using _ to denote private member variables.
|
2014-09-24 13:53:03 -07:00 |
|
|
2762db8408
|
More work on control bus refactor...
|
2014-09-17 12:54:39 -07:00 |
|
|
1d37204a37
|
Refactoring in progress... pardon our dust...
|
2014-09-12 16:57:37 -07:00 |
|
|
4e9280fc7a
|
Rip out dead "firewall opener" code, replace in pipeline with anti-symmetric-NAT tactics.
|
2014-09-05 16:23:24 -07:00 |
|
|
c2187c8759
|
(1) distribute default root-topology in new dictionary format, (2) bump peer serialization version to force obsolescence of old supernodes, (3) stop outputting a log message every time we poll for software updates
|
2014-08-14 19:52:22 -04:00 |
|
|
be6b61b1bc
|
Accept supernode dictionaries in Topology, also fix (unused) field name in one of these.
|
2014-08-14 18:06:18 -04:00 |
|
|
8a804b5257
|
(1) Disable firewall openers (its easy to re-enable), (2) Do some prep work for making supernode topology hot-updatable.
|
2014-08-05 14:05:50 -07:00 |
|
|
88bdb81791
|
Keep track of basic aliveness for peers regardless if direct or indirect connectivity and use this for multicast propagation. Also consolidate adding of active bridges via the same functor as regular multicast next hops.
|
2014-06-30 11:31:04 -07:00 |
|
|
8fb442d81a
|
Yet more cleanup to TCP logic, this time adding a master switch and adding UDP preference in send().
|
2014-04-09 17:08:35 -07:00 |
|
|
fe85426df6
|
A few more tweaks to TCP failover... seems to be switching back and forth pretty well now!
|
2014-04-03 17:12:34 -07:00 |
|
|
158002d2d1
|
Tweak some timings and stuff.
|
2014-04-03 16:19:41 -07:00 |
|
|
c96d3ebf8c
|
Such ping logic. So edge case.
|
2014-04-03 14:36:52 -07:00 |
|
|
700a450806
|
More tweaks to algorithm for determining when to fail over to TCP, and stop supernodes from resynchronizing unless explicitly ordered.
|
2014-04-01 18:39:10 -07:00 |
|
|
daaec84c6b
|
Add TCP channel support for supernode list, make Peer pick the first path if all paths are equally dead.
|
2014-03-26 15:35:15 -07:00 |
|
|
33ad3deaee
|
Builds with new Path code.
|
2014-03-21 13:46:55 -07:00 |
|
|
ba3f04deed
|
Work in progress: refactoring paths, adding TCP fallback.
|
2014-03-20 20:07:35 -07:00 |
|
|
b5c3a92be2
|
Boring stuff: update dates in copyrights across all files.
|
2014-02-16 12:40:22 -08:00 |
|
|
525ab3faa9
|
Take TRACE back out of Mac makefile, fix a few decode little things.
|
2014-01-30 15:26:12 -08:00 |
|
|
490e86dde3
|
Bunch of fixes to startup, pinging, and choice of route. Also some TRACE updates.
|
2014-01-30 14:23:52 -08:00 |
|
|
6e076e77d8
|
More work on connection reset stuff...
|
2014-01-29 22:04:23 -08:00 |
|
|
694e9f2bdc
|
Some cleanup and rationalization of main loop.
|
2014-01-29 14:09:12 -08:00 |
|
|
d6a346ca6e
|
Fix for GitHub issue #35 and also possibly partial fix for #29 issues.
|
2014-01-28 16:12:24 -08:00 |
|
|
612c17240a
|
Dead code removal, fix for cleanup GitHub issue #28
|
2013-12-06 16:49:20 -08:00 |
|
|
5e71e07f59
|
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 |
|
|
40e4f39181
|
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 |
|
|
6e217dfcb0
|
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 |
|
|
ca93b4a1ac
|
Clean up some stuff, including a few spots where exceptions were not being handled correctly.
|
2013-10-18 14:16:53 -04:00 |
|
|
4267e7da93
|
Remove a whole bunch of now-unnecessary cruft from Topology and PacketDecoder.
|
2013-10-05 10:19:12 -04:00 |
|
|
58538500f2
|
Clean up some routine stuff like pings, and stop keeping links open forever even if there are no frames passing between them.
|
2013-10-02 16:12:10 -04:00 |
|
|
4c06fcfc9d
|
More include formatting cleanup.
|
2013-09-17 15:53:59 -04:00 |
|
|
8a46452a70
|
Move template parameter in Thread to a more logical scope location.
|
2013-08-08 09:19:36 -04:00 |
|
|
e73c4cb68b
|
Whole bunch of stuff: netconf, bug fixes, tweaks to ping and firewall opener timing code.
|
2013-08-06 00:05:39 -04:00 |
|
|
a7c4cbe53a
|
CLI debugging, got rid of nasty old Thread class and replaced with newer cleaner portable idiom.
|
2013-08-05 16:06:16 -04:00 |
|
|
0c7f8e247c
|
Add amSupernode to make code clearer in the check-if-self-is-supernode case.
|
2013-07-23 10:23:55 -07:00 |
|
|
76bc9968ff
|
New simpler command interface via loopback UDP protected by a crypto token.
|
2013-07-17 14:10:44 -04:00 |
|
|
f934b81703
|
Several bug fixes in newly refactored code.
|
2013-07-12 16:40:59 -04:00 |
|
|
9e28bbfbb2
|
Factored out multicast propagation algorithm from Switch and Topology, also cleaned up and clarified it a bit.
|
2013-07-10 17:24:27 -04:00 |
|
|
7c85a638b0
|
Added creation and periodic update of a file called "status" in the home directory that contains peer link status. Useful for debugging and statistics. Send it SIGHUP to force an update now. Otherwise it updates every 120 seconds.
|
2013-07-06 14:58:34 -04:00 |
|