81 Commits (59eb09d06318c8378193dfd40fc37bc308ee9044)

Author SHA1 Message Date
Adam Ierymenko 4e4fd51117 boring doc stuff 10 years ago
Grant Limberg 75f8ee1b9c get the compiler to stop complaining about two string literals (one a macro) next to each other without an intervening space 11 years ago
Adam Ierymenko 0d9f33dc4f Fix: (1) Windows stack overflow due to buffer too large in peer deserialize, (2) clean up some other stuff seen during debugging and reduce the sizes of some buffers due to Windows small stack size, (3) remove a redundant try/catch. 11 years ago
Adam Ierymenko 3fa1b5a89d Make cluster HAVE_PEER a little lighter by removing full identity. Technically this is not necessary and they will propagate over time in any case. Might restore it in some form in the future. 11 years ago
Adam Ierymenko 7fbe2f7adf Tweak some more timings for better reliability. 11 years ago
Adam Ierymenko 1b4cc4af5c Fix evil bug, and instrument/assert on some other stuff, and a bit of cleanup. 11 years ago
Adam Ierymenko 7382c328da Null pointer bug appears fixed... testing again at large scale. 11 years ago
Adam Ierymenko 641b0dec44 . 11 years ago
Adam Ierymenko 2fbb5d0bbf . 11 years ago
Adam Ierymenko d8dbbf7484 Add some debug code in TRACE mode to catch a bug. 11 years ago
Adam Ierymenko 377ccff600 getPeer() had a small potential to be unsafe. 11 years ago
Adam Ierymenko 68d6d3c4ff Fix bug in peer count. 11 years ago
Adam Ierymenko 4221552c0b Use getPeerNoCache() in Cluster to avoid keeping all peers cached everywhere. 11 years ago
Adam Ierymenko 865acfa40f Cluster status plumbing. 11 years ago
Adam Ierymenko e6a63f5547 Fix bug in setWorld that might have caused a peer entry for myself (which would never be used) 11 years ago
Adam Ierymenko 95953b48f9 Do not allow VERB_RENDEZVOUS from non-upstream peers to block potential DOS vector. 11 years ago
Adam Ierymenko 619e113748 Work in progress on Cluster for new root infrastructure, multi-homing. 11 years ago
Adam Ierymenko 5d2f523e81 World stuff... 11 years ago
Adam Ierymenko cae58f43f1 More World stuff, and mkworld. 11 years ago
Adam Ierymenko 1b1945c63e Work in progress on refactoring root-topology into World and adding in-band updates. 11 years ago
Adam Ierymenko 76a95dc58f The return of peer peristence. 11 years ago
Adam Ierymenko 3a959a7763 Swap out std::map<> for Hashtable<> for main peer database in Topology. (ongoing std::map-ectomy) 11 years ago
Adam Ierymenko f0003ea922 Push remote surface as reported by peers along with known interface direct paths to assist with (some) NAT traversal. (trying this, may back out if not effective) 11 years ago
Adam Ierymenko 7bae95836c Root server terminology cleanup, and tighten up a security check by checking full identity of peers instead of just address. 11 years ago
Adam Ierymenko aab17d9f1f Kill obsolete amSupernode method -- we now have no differing behaviors. 11 years ago
Kees Bos a425bbc673 Renamed supernode to rootserver 11 years ago
Adam Ierymenko ccc73b920e Node peer list function for CAPI, and some Peer cleanup. 11 years ago
Adam Ierymenko ee2f51f48e Make Toplogy use dataStoreXX() methods from Node, and get rid of old TCP stuff. 11 years ago
Adam Ierymenko 49f031ccb4 Tons of refactoring, change to desperation algorithm to use max of core or link, porting over core loop code from old Node.cpp to new CAPI version, etc. 11 years ago
Adam Ierymenko 52c3b7c34e Implemented empirical determination of external addressing, paritioned per scope. 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 ee0f56355b Send path simplification. 11 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. 11 years ago
Adam Ierymenko 93012b0ee5 Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware] 11 years ago
Adam Ierymenko eeed31b396 Ping supernodes on surface change, and also reset TCP flag. 11 years ago
Adam Ierymenko 37d23336ed Surface logic in Topology. 11 years ago
Adam Ierymenko 61cff47f5b Code to track externally visible address surface. 11 years ago
Adam Ierymenko 4e95384ad6 Cleanup, add tristate to config code in Network, and happy new year! 11 years ago
Adam Ierymenko 74f36f5dc0 Windows build fixes. 12 years ago
Adam Ierymenko a8bd8fff93 Make several changes to eliminate potential deadlock or recursive lock conditions, and add back rescan of multicast groups on network startup. 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 e1882b614b Some cleanup, Multicaster now sends multicasts as it gets additional members. 12 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. 12 years ago
Adam Ierymenko 2762db8408 More work on control bus refactor... 12 years ago
Adam Ierymenko 1d37204a37 Refactoring in progress... pardon our dust... 12 years ago
Adam Ierymenko 4e9280fc7a Rip out dead "firewall opener" code, replace in pipeline with anti-symmetric-NAT tactics. 12 years ago
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 12 years ago
Adam Ierymenko be6b61b1bc Accept supernode dictionaries in Topology, also fix (unused) field name in one of these. 12 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. 12 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. 12 years ago