summaryrefslogtreecommitdiff
path: root/node/Peer.cpp
AgeCommit message (Collapse)Author
2015-04-06build fixesAdam Ierymenko
2015-04-06Multicast group join/leave and group membership announcement.Adam Ierymenko
2015-04-03Send path simplification.Adam Ierymenko
2015-04-02The concept of link desperation (escalating to less desirable transports) ↵Adam Ierymenko
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-02-17Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware]Adam Ierymenko
2015-01-05Cleanup, add tristate to config code in Network, and happy new year!Adam Ierymenko
2014-11-20Change path selection logic to exclude non-fixed and non-active paths -- ↵Adam Ierymenko
possible fix for "NAT traversal coma" issue. Also fix a typo.
2014-10-21Simplify locking semantics some more to address a deadlock.Adam Ierymenko
2014-10-13Permanently retire peers.persist, but make iddb.d always enabled instead ↵Adam Ierymenko
since identities are what we really want to cache.
2014-10-11Stop persisting last announcement time since Multicaster is volatile. Also ↵Adam Ierymenko
some more legacy multicast fixes.
2014-10-06Bug fix in new multicast frame handler, handling of old "P5" multicast ↵Adam Ierymenko
frames in new way.
2014-10-03Announce multicast group changes on network rescanMulticastGroups()Adam Ierymenko
2014-09-30Everything in for new multicast except IncomingPacket parsing...Adam Ierymenko
2014-09-24Rename the ubiquitous _r pointer to RuntimeEnvironment to RR just to be a ↵Adam Ierymenko
little more consistent about using _ to denote private member variables.
2014-09-05Rip out dead "firewall opener" code, replace in pipeline with ↵Adam Ierymenko
anti-symmetric-NAT tactics.
2014-08-05(1) Disable firewall openers (its easy to re-enable), (2) Do some prep work ↵Adam Ierymenko
for making supernode topology hot-updatable.
2014-06-30Keep track of basic aliveness for peers regardless if direct or indirect ↵Adam Ierymenko
connectivity and use this for multicast propagation. Also consolidate adding of active bridges via the same functor as regular multicast next hops.
2014-06-10Packet decoder work for EXT_FRAME for bridging - GitHub issue #68Adam Ierymenko
2014-04-10More toward GitHub issue #56Adam Ierymenko
2014-04-10Prevent recursive transit of ZeroTier packets, toward GitHub issue #56Adam Ierymenko
2014-04-10Probable fix for GitHub issue #63 - do not unite() if either path is TCP, ↵Adam Ierymenko
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.
2014-04-10More logic cleanup and some documentation / comment improvements.Adam Ierymenko
2014-04-09Yet more cleanup to TCP logic, this time adding a master switch and adding ↵Adam Ierymenko
UDP preference in send().
2014-04-09Some cleanup, and use best (not first) UDP addresses for NAT-t ↵Adam Ierymenko
VERB_RENDEZVOUS computation.
2014-04-09More tweaks to TCP logic for GitHub issue #60Adam Ierymenko
2014-04-09Some adjustments to TCP logic for GitHub issue #60Adam Ierymenko
2014-04-03A few more tweaks to TCP failover... seems to be switching back and forth ↵Adam Ierymenko
pretty well now!
2014-04-03Such ping logic. So edge case.Adam Ierymenko
2014-04-02More tweaks to TCP failover logic. Such edge case.Adam Ierymenko
2014-04-01More tweaks to algorithm for determining when to fail over to TCP, and stop ↵Adam Ierymenko
supernodes from resynchronizing unless explicitly ordered.
2014-04-01The remove paths on send fail thing in Peer.cpp was not well thought out, ↵Adam Ierymenko
and there is no point in mallocing the TCP write buffer.
2014-03-31Oops... turns out we need to differentiate incoming from outgoing TCP and ↵Adam Ierymenko
indeed learn incoming TCP paths. Otherwise the recipient of a TCP connection does not know to reply via TCP! Heh.
2014-03-31Clean dead paths from peers.Adam Ierymenko
2014-03-27Reduce some TRACE noise.Adam Ierymenko
2014-03-26Fix TCP connection accumulation problem, still having issues with TCP tunneling.Adam Ierymenko
2014-03-26Change the way TCP failover is invoked.Adam Ierymenko
2014-03-26If I want it to pick the first, actually picking the first is helpful.Adam Ierymenko
2014-03-26Add TCP channel support for supernode list, make Peer pick the first path if ↵Adam Ierymenko
all paths are equally dead.
2014-03-21Fix deadlock in refactored code.Adam Ierymenko
2014-03-21A few renamings to be consistent.Adam Ierymenko
2014-03-21Builds with new Path code.Adam Ierymenko
2014-03-20Work in progress: refactoring paths, adding TCP fallback.Adam Ierymenko
2014-03-20Reworking of paths in Peer work-in-progress, and TCP connect support in ↵Adam Ierymenko
SocketManager. Also add FD_SETSIZE checking for the default select implementation of sockets.
2014-03-19IPC changes and SocketManager changes all build!Adam Ierymenko
2014-03-18Everything but the local config bus... blech.Adam Ierymenko
2014-02-16Boring stuff: update dates in copyrights across all files.Adam Ierymenko
2014-02-03Yank a code path it turns out we probably don't want.Adam Ierymenko
2014-01-30Bunch of fixes to startup, pinging, and choice of route. Also some TRACE ↵Adam Ierymenko
updates.
2013-12-31VERSION 0.6.7: revert change for GitHub issue #20Adam Ierymenko
This will have to be thought out more. The old version worked fine 99% of the time so we'll revisit this.
2013-12-31TRACE output improvements and compile fix.Adam Ierymenko