54 Commits (54954f5b8886bd6ea49e043fa5a695fcd7608c68)

Author SHA1 Message Date
Adam Ierymenko 417f56de2f Add some TRACE instrumentation to external surface address awareness. 11 years ago
Adam Ierymenko ea1859541c More cleanup, and fix for the extremely unlikely case of identity collision. 11 years ago
Adam Ierymenko 6369c264e2 Rename netconf to controller and NetworkConfigMaster to NetworkController for consistency. 11 years ago
Adam Ierymenko 98bcc3d4b5 Disable a few noisy TRACEs, and limit how often we confirm new paths to avoid flooding. 11 years ago
Adam Ierymenko 068d311ecc TRACE compile fixes, other fixes, and it basically works! It says HELLO. 11 years ago
Adam Ierymenko 4d5a6a25d3 Add events for packet decode errors, etc., and re-implement TRACE as an event. 11 years ago
Adam Ierymenko 52c3b7c34e Implemented empirical determination of external addressing, paritioned per scope. 11 years ago
Adam Ierymenko 817824b88b Some external surface awareness work, and IP scope classification. 11 years ago
Adam Ierymenko a2821e9000 Add code to check external surface against reported surface from other trusted peers, and also rename ExternalSurface to SelfAwareness because lulz. 11 years ago
Adam Ierymenko f4fd2d4971 Bring IncomingPacket into line with new changes. 11 years ago
Adam Ierymenko 1f28ce3980 Tons more refactoring: simplify Network, move explicit management of Tap out, redo COM serialization, etc. 11 years ago
Adam Ierymenko b6fba5934a RedisNetworkConfigMaster in its own folder. Also fix some hex/decimal Redis database confusion. 11 years ago
Adam Ierymenko ff255a34de Make NetworkConfigMaster a plugin to get Redis and other non-endpoint code out of node/ 11 years ago
Adam Ierymenko 93012b0ee5 Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware] 11 years ago
Adam Ierymenko b1bf3f68c3 Drop support for legacy P5 multicast, as there are fewer than 1% of these remaining on the network. 11 years ago
Adam Ierymenko 0b84c10ccc Add confirmation step to new netconf, with the caveat that it will be disabled for older netconf servers to avoid race. Also add some comments. 11 years ago
Adam Ierymenko afea153a0b Build fixes. 11 years ago
Adam Ierymenko 64ba596e0b C++ network config master ready to test. 11 years ago
Adam Ierymenko 4e95384ad6 Cleanup, add tristate to config code in Network, and happy new year! 11 years ago
Adam Ierymenko 56cfe1d603 Strip out old Service code, add new service message type. 11 years ago
Adam Ierymenko ff539c22f9 locallyValidate() is expensive -- stop doing it on every HELLO since in most cases we already know the identity and know it is valid 11 years ago
Adam Ierymenko 8c64046a53 docs 11 years ago
Adam Ierymenko 15d3e383e6 Add ZT_SUPPORT_LEGACY_MULTICAST ifdef to enable the legacy code to all be toggled. 11 years ago
Adam Ierymenko 7619b0ecbd Send multicasts in random order. 11 years ago
Adam Ierymenko c61e9c0ef9 Prevent "software laser" in legacy multicast support. Already hotpatched in supernodes. 12 years ago
Adam Ierymenko 5484cf4309 More cleanup, and fix a bug in Multicaster::gather() 12 years ago
Adam Ierymenko 22d8aa4dc9 Moderate efficiency improvement on multicast gather result parsing, and go ahead and keep track of total known peers. 12 years ago
Adam Ierymenko 0e47f13f14 Simplify locking semantics some more to address a deadlock. 12 years ago
Adam Ierymenko 42d644a57e More fixes to legacy support, and to a potential issue on quit. 12 years ago
Adam Ierymenko 2416491cbc Permanently retire peers.persist, but make iddb.d always enabled instead since identities are what we really want to cache. 12 years ago
Adam Ierymenko 8b0846d077 Delete bunch of commented out code. 12 years ago
Adam Ierymenko 0d017c043f Stop persisting last announcement time since Multicaster is volatile. Also some more legacy multicast fixes. 12 years ago
Adam Ierymenko c2aac69a9f Fixes to legacy peer support. 12 years ago
Adam Ierymenko e071c05f1b Add a sanity limit to legacy multicast repeater function in supernode-mode nodes, and change netconf-master to issue multicast limit (ml) instead of old p5 stuff. 12 years ago
Adam Ierymenko 1774e615a1 <= MTU 12 years ago
Adam Ierymenko 56f8f8aa24 Return self in GATHER requests if self is a member of multicast group, and reinstate legacy support. 12 years ago
Adam Ierymenko 4941c8a1f3 New multicast bug fixes, TRACE improvements, and temporarily disable legacy multicast for debugging purposes. 12 years ago
Adam Ierymenko d5e0f7e3e4 Reorg multicast packet, and a whole bunch of refactoring around the pushing of certificates of membership. 12 years ago
Adam Ierymenko 620e64c58f Supernode propagation of legacy multicast frames was brokezored. 12 years ago
Adam Ierymenko 87f1b1b1e3 Bug fix in new multicast frame handler, handling of old "P5" multicast frames in new way. 12 years ago
Adam Ierymenko ab22feba9a Bump version to 1.0.0, add legacy support code to Multicaster to not send new frame to known-to-be-old peers. 12 years ago
Adam Ierymenko 3f7e7e8a88 Do not multicast to self. 12 years ago
Adam Ierymenko 1109046782 Last steps before test: parse OK(MULTICAST_GATHER) and OK(MULTICAST_FRAME) 12 years ago
Adam Ierymenko 49dc47ff38 Make multicast gathering a bit smarter. 12 years ago
Adam Ierymenko 23836d4c11 Change "encrypted" flag to full cipher suite selector. Go ahead and reserve AES256-GCM which might be added in the future. 12 years ago
Adam Ierymenko e53d208ea4 Improve security posture by eliminating non-const data() accessor from Buffer. 12 years ago
Adam Ierymenko 28646eee0a A bit more IncomingPacket cleanup... almost ready to test, just need OK() handling. 12 years ago
Adam Ierymenko ea6124dd2f IncomingPacket builds! 12 years ago
Adam Ierymenko b41437780b Add origin to new MULTICAST_FRAME, move security check for certs into Network to remove redundant code and bug-proneness, more work on IncomingPacket... 12 years ago
Adam Ierymenko 2659427864 Multicaster needs to be global, not per-network, and a bunch of other stuff. 12 years ago