Commit History

Author SHA1 Message Date
  Adam Ierymenko 24608d5ca3 Always use HELLO to contact, and we now confirm newly learned paths via a two-way handshake to prevent half-connects. 10 years ago
  Adam Ierymenko 197d272287 More NAT strategy cleanup. 10 years ago
  Adam Ierymenko be4683a96d Get rid of random port strategy -- research does not support. 10 years ago
  Adam Ierymenko a95f1e1418 Eliminate redundant SharedPtr assignment. 10 years ago
  Adam Ierymenko 6eb9289367 Bunch more cleanup, improvements to NAT traversal logic, finished updating Switch. 10 years ago
  Adam Ierymenko ee0f56355b Send path simplification. 10 years ago
  Adam Ierymenko 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. 10 years ago
  Adam Ierymenko 93012b0ee5 Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware] 10 years ago
  Adam Ierymenko 4e95384ad6 Cleanup, add tristate to config code in Network, and happy new year! 10 years ago
  Adam Ierymenko 0c85b4ef5f Tweak to symmetric NAT buster to add one to the number of ports above the current one it attempts. 10 years ago
  Adam Ierymenko 5bb854e504 Fix a nasty bug introduced in packet fragmentation a while back during refactoring, and a few other things related to multicast. 10 years ago
  Adam Ierymenko 4941c8a1f3 New multicast bug fixes, TRACE improvements, and temporarily disable legacy multicast for debugging purposes. 11 years ago
  Adam Ierymenko d5e0f7e3e4 Reorg multicast packet, and a whole bunch of refactoring around the pushing of certificates of membership. 11 years ago
  Adam Ierymenko 2c8321be1f Pull logic to always send new multicasts to supernode since we need to do that differently, re-add support for active bridges, and remove some gratuitous use of std::set where not needed. 11 years ago
  Adam Ierymenko e7c81ef34e Turns out that needed to be a list after all. Also clean up Multicaster::gather(). 11 years ago
  Adam Ierymenko 49dc47ff38 Make multicast gathering a bit smarter. 11 years ago
  Adam Ierymenko e1882b614b Some cleanup, Multicaster now sends multicasts as it gets additional members. 11 years ago
  Adam Ierymenko ae082c3cb8 Yay... now everything compiles! Getting close to testing on this. Still have not added backward compatibility support for relaying of multicasts to 0.9.X clients yet but that will be easy. Will test with heterogenous 1.0.0 clients only first. 11 years ago
  Adam Ierymenko 8607aa7c3c Everything in for new multicast except IncomingPacket parsing... 11 years ago
  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 years ago
  Adam Ierymenko 431476e2e4 Some more multicast algo work... 11 years ago
  Adam Ierymenko 557801a09e Rename PacketDecoder to much more descriptive IncomingPacket 11 years ago
  Adam Ierymenko d9abd4d9be Work on defining new direct broadcast multicast algorithm. 11 years ago
  Adam Ierymenko 4e9280fc7a Rip out dead "firewall opener" code, replace in pipeline with anti-symmetric-NAT tactics. 11 years ago
  Adam Ierymenko 282114e96c Makefile changes, and make Topology::getBestSupernode() return the "next" supernode if I am a supernode. Also some comment cleanup. 11 years ago
  Adam Ierymenko 8a804b5257 (1) Disable firewall openers (its easy to re-enable), (2) Do some prep work for making supernode topology hot-updatable. 11 years ago
  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 years ago
  Adam Ierymenko 458f6ae7c3 Only add active bridges to top of MC propagation list if they are alive. Otherwise a dead active bridge might kill multicast for us. 11 years ago
  Adam Ierymenko ae7143d693 Comments and cleanup. 11 years ago
  Adam Ierymenko aead1050fb Bridging (GitHub issue #68) does indeed work! Just needed to fix a packet size thinko. 11 years ago