9480ff1f37
Fix some timestamp signedness mismatches.
2020-11-11 11:46:09 -05:00
06730c7d1d
BSL date bump
2020-08-20 12:51:39 -07:00
52a166a71f
Relicense: GPLv3 -> ZeroTier BSL 1.1
2019-08-23 09:23:39 -07:00
818b7e4a2e
GitHub issue #993 (???)
2019-08-04 15:35:43 -07:00
00d63f6046
GitHub issue #993 (???)
2019-08-04 15:15:02 -07:00
e03102dbcb
Clean out some unnecessarily pedantic auth stuff in favor of a simpler way of gating multicast gathers.
2019-03-14 14:29:15 -07:00
0e597191b8
Updated licenses for 2019
2019-01-14 10:25:53 -08:00
e6f9ab929d
More speed stuff.
2018-12-06 12:47:58 -08:00
d3d58ba8a7
Add support for designated multicast replicators to Multicaster::send().
2018-01-26 21:19:51 -05:00
f03fd57997
Clean up some multicast code.
2018-01-26 20:38:44 -05:00
f3dfd63634
Clean up some old stuff.
2018-01-26 20:00:37 -05:00
65c07afe05
Copyright updates for 2018.
2018-01-08 14:33:28 -08:00
b1d60df44c
timestamps changed from uint64_t to int64_t
...
There were cases in the code where time calculations and comparisons were overflowing and causing connection instability. This will keep time calculations within expected ranges.
2017-10-02 15:52:57 -07:00
b9e1d53d7a
Minor cleanup.
2017-07-17 14:21:09 -07:00
1b68d6dbdc
License header update.
2017-04-27 20:47:25 -07:00
e4896b257f
Add thread PTR that gets passed through the entire ZT core call stack and then passed to handler functions resulting from a call.
2017-03-27 17:03:17 -07:00
1346e31a8e
Windows build fixes, Software update fix, warning removal.
2017-01-13 14:22:36 -08:00
cc4bacc199
Cleanup, and implement compression disable flag for networks.
2016-09-27 12:22:25 -07:00
ab9afbc749
(1) Public networks now get COMs even though they do not gate with them since they will need them to push auth for multicast stuff, (2) added a bunch of rate limit circuit breakers for anti-DOS, (3) cleanup.
2016-09-09 11:36:10 -07:00
00fd9c3a15
It builds... almost ready to test some rules engine stuff.
2016-08-08 17:33:26 -07:00
4e4fd51117
boring doc stuff
2016-01-12 14:04:55 -08:00
21341ab15c
Ready to test.
2015-11-09 09:45:43 -08:00
b11ffc9635
Integrate Hashtable into Multicaster, where @mwarning found heaviest std::map() overhead.
2015-08-27 16:17:21 -07:00
412389ec75
Implement ERROR_UNWATNED_MULTICAST
2015-07-07 11:49:38 -07:00
3f71afd0fb
Put multicast txQueue back to list.
2015-06-26 14:26:35 -07:00
0073d0f694
replace txQueue list by vector for faster memory access and less allocations
2015-06-19 00:28:51 +02:00
93012b0ee5
Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware]
2015-02-17 13:11:34 -08:00
4e95384ad6
Cleanup, add tristate to config code in Network, and happy new year!
2015-01-05 17:47:59 -08:00
7619b0ecbd
Send multicasts in random order.
...
This should not affect most users, but on large networks it should cause service
announcements to work a lot better. This is the result of a prolonged discussion
with a user about the visibility of game servers on a large network. The old
multicast algorithm was de-facto randomized due to its distributed nature, while
the new algorithm is more deterministic. This will restore some randomization
beyond limit-overflow conditions.
It won't affect small networks at all.
2014-11-21 10:50:27 -08:00
22d8aa4dc9
Moderate efficiency improvement on multicast gather result parsing, and go ahead and keep track of total known peers.
2014-10-29 15:26:32 -07:00
4dec598fb8
Make multicast gather slightly more aggressive, and add total to list command in testnet.
2014-10-28 15:33:10 -07:00
c2aac69a9f
Fixes to legacy peer support.
2014-10-11 15:49:31 -07:00
4941c8a1f3
New multicast bug fixes, TRACE improvements, and temporarily disable legacy multicast for debugging purposes.
2014-10-09 17:58:31 -07:00
ab22feba9a
Bump version to 1.0.0, add legacy support code to Multicaster to not send new frame to known-to-be-old peers.
2014-10-05 10:34:25 -07:00
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.
2014-10-04 13:15:02 -07:00
62da7e67b6
Add some rate limiting to implicit gathers, and always send multicasts to at least one supernode so they can broadcast to old peers (temporary).
2014-10-03 22:30:10 -07:00
3f7e7e8a88
Do not multicast to self.
2014-10-03 18:42:41 -07:00
49dc47ff38
Make multicast gathering a bit smarter.
2014-10-02 11:35:37 -07:00
e1882b614b
Some cleanup, Multicaster now sends multicasts as it gets additional members.
2014-10-01 14:05:25 -07:00
2659427864
Multicaster needs to be global, not per-network, and a bunch of other stuff.
2014-09-30 16:28:25 -07:00
ed0ba49502
A few more revisions to new multicast verbs.
2014-09-26 14:18:25 -07:00
0778332747
.
2014-09-25 22:08:52 -07:00
9e186bbd89
.
2014-09-25 15:57:43 -07:00
050a0ce85d
.
2014-09-25 15:08:29 -07:00
6c87f9f765
Rename MulticastTopology to Multicaster -- same name as old multicast controller but different code. More descriptive though.
2014-09-24 14:02:16 -07:00
d9abd4d9be
Work on defining new direct broadcast multicast algorithm.
2014-09-18 18:28:14 -07:00
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.
2014-06-30 11:31:04 -07:00
5682f0b772
Some more bridging work... wiring up in Switch - GitHub issue #68
2014-06-13 17:49:33 -07:00
b5c3a92be2
Boring stuff: update dates in copyrights across all files.
2014-02-16 12:40:22 -08:00
612c17240a
Dead code removal, fix for cleanup GitHub issue #28
2013-12-06 16:49:20 -08:00