Adam Ierymenko
|
a8bd8fff93
Make several changes to eliminate potential deadlock or recursive lock conditions, and add back rescan of multicast groups on network startup.
|
11 年之前 |
Adam Ierymenko
|
7a37326cc0
Fix sleeper bug that probably did nothing in setSupernodes().
|
11 年之前 |
Adam Ierymenko
|
2416491cbc
Permanently retire peers.persist, but make iddb.d always enabled instead since identities are what we really want to cache.
|
11 年之前 |
Adam Ierymenko
|
6316011024
Make crypto and compression build optimized in debug, and also try disabling peers.persist -- might ship this way as it seems more trouble than its worth.
|
11 年之前 |
Adam Ierymenko
|
e53d208ea4
Improve security posture by eliminating non-const data() accessor from Buffer.
|
11 年之前 |
Adam Ierymenko
|
e1882b614b
Some cleanup, Multicaster now sends multicasts as it gets additional members.
|
11 年之前 |
Adam Ierymenko
|
81b12b6826
Rename the ubiquitous _r pointer to RuntimeEnvironment to RR just to be a little more consistent about using _ to denote private member variables.
|
11 年之前 |
Adam Ierymenko
|
282114e96c
Makefile changes, and make Topology::getBestSupernode() return the "next" supernode if I am a supernode. Also some comment cleanup.
|
11 年之前 |
Adam Ierymenko
|
aa59cfd545
Web request part of supernode resync (not quite done, needs test)
|
11 年之前 |
Adam Ierymenko
|
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
|
11 年之前 |
Adam Ierymenko
|
be6b61b1bc
Accept supernode dictionaries in Topology, also fix (unused) field name in one of these.
|
11 年之前 |
Adam Ierymenko
|
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.
|
11 年之前 |
Adam Ierymenko
|
7831c4bfef
Cleanup, dead code removal, some pretty insignificant security stuff that's based on recommendations.
|
11 年之前 |
Adam Ierymenko
|
f13493edb2
Oops... turns out we need to differentiate incoming from outgoing TCP and indeed learn incoming TCP paths. Otherwise the recipient of a TCP connection does not know to reply via TCP! Heh.
|
11 年之前 |
Adam Ierymenko
|
8e587ae481
Clean dead paths from peers.
|
11 年之前 |
Adam Ierymenko
|
daaec84c6b
Add TCP channel support for supernode list, make Peer pick the first path if all paths are equally dead.
|
11 年之前 |
Adam Ierymenko
|
8d3eb1a258
A few renamings to be consistent.
|
11 年之前 |
Adam Ierymenko
|
33ad3deaee
Builds with new Path code.
|
11 年之前 |
Adam Ierymenko
|
b5c3a92be2
Boring stuff: update dates in copyrights across all files.
|
11 年之前 |
Adam Ierymenko
|
9acfd3eb73
Build fix on Linux with G++.
|
11 年之前 |
Adam Ierymenko
|
0ad84b8723
Possible bug fix in Topology, have to test...
|
11 年之前 |
Adam Ierymenko
|
d452ed7db8
Fix inverted sense bug in new skip-stale-relay logic.
|
11 年之前 |
Adam Ierymenko
|
d7bc3c6f4a
Fix infinite loop bug introduced in last commit.
|
11 年之前 |
Adam Ierymenko
|
d04e5a1fe0
Add a simple but very nice mechanism for avoiding potentially dead supernodes.
|
11 年之前 |
Adam Ierymenko
|
22efa1ab53
Windows Installer work, fix 100% CPU bug in EthernetTap on Windows, Windows lockDownFile() implementation that uses 'cacls' utility.
|
11 年之前 |
Adam Ierymenko
|
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.
|
12 年之前 |
Adam Ierymenko
|
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.
|
12 年之前 |
Adam Ierymenko
|
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.
|
12 年之前 |
Adam Ierymenko
|
ca93b4a1ac
Clean up some stuff, including a few spots where exceptions were not being handled correctly.
|
12 年之前 |
Adam Ierymenko
|
4267e7da93
Remove a whole bunch of now-unnecessary cruft from Topology and PacketDecoder.
|
12 年之前 |