Adam Ierymenko
|
4e95384ad6
Cleanup, add tristate to config code in Network, and happy new year!
|
%!s(int64=10) %!d(string=hai) anos |
Adam Ierymenko
|
ee9e6a3c6b
Change path selection logic to exclude non-fixed and non-active paths -- possible fix for "NAT traversal coma" issue. Also fix a typo.
|
%!s(int64=10) %!d(string=hai) anos |
Adam Ierymenko
|
0e47f13f14
Simplify locking semantics some more to address a deadlock.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
2416491cbc
Permanently retire peers.persist, but make iddb.d always enabled instead since identities are what we really want to cache.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
0d017c043f
Stop persisting last announcement time since Multicaster is volatile. Also some more legacy multicast fixes.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
87f1b1b1e3
Bug fix in new multicast frame handler, handling of old "P5" multicast frames in new way.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
496109fdcc
Announce multicast group changes on network rescanMulticastGroups()
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
8607aa7c3c
Everything in for new multicast except IncomingPacket parsing...
|
%!s(int64=11) %!d(string=hai) anos |
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.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
4e9280fc7a
Rip out dead "firewall opener" code, replace in pipeline with anti-symmetric-NAT tactics.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
8a804b5257
(1) Disable firewall openers (its easy to re-enable), (2) Do some prep work for making supernode topology hot-updatable.
|
%!s(int64=11) %!d(string=hai) anos |
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.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
c30f9832b0
Packet decoder work for EXT_FRAME for bridging - GitHub issue #68
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
aee742e767
More toward GitHub issue #56
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
c9294c1a78
Prevent recursive transit of ZeroTier packets, toward GitHub issue #56
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
b117ff5435
Probable fix for GitHub issue #63 - do not unite() if either path is TCP, since doing so can result in asymmetric failed NAT-t over UDP if one side has a firewall that permits outgoing UDP but not incoming.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
119ef5ecbf
More logic cleanup and some documentation / comment improvements.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
8fb442d81a
Yet more cleanup to TCP logic, this time adding a master switch and adding UDP preference in send().
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
73153b89b4
Some cleanup, and use best (not first) UDP addresses for NAT-t VERB_RENDEZVOUS computation.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
a8c12369fd
More tweaks to TCP logic for GitHub issue #60
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
28a6d328a5
Some adjustments to TCP logic for GitHub issue #60
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
fe85426df6
A few more tweaks to TCP failover... seems to be switching back and forth pretty well now!
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
c96d3ebf8c
Such ping logic. So edge case.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
81e5690410
More tweaks to TCP failover logic. Such edge case.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
700a450806
More tweaks to algorithm for determining when to fail over to TCP, and stop supernodes from resynchronizing unless explicitly ordered.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
0e1fc06a6f
The remove paths on send fail thing in Peer.cpp was not well thought out, and there is no point in mallocing the TCP write buffer.
|
%!s(int64=11) %!d(string=hai) anos |
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.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
8e587ae481
Clean dead paths from peers.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
9c68a343f6
Reduce some TRACE noise.
|
%!s(int64=11) %!d(string=hai) anos |
Adam Ierymenko
|
2ac56fd120
Fix TCP connection accumulation problem, still having issues with TCP tunneling.
|
%!s(int64=11) %!d(string=hai) anos |