Adam Ierymenko
75a45eeb27
Revert "Backport guts of 1.8 to 1.6 tree so we can point release without waiting for UI quirks to be fixed."
...
This reverts commit 48ce7632fa .
5 years ago
Adam Ierymenko
48ce7632fa
Backport guts of 1.8 to 1.6 tree so we can point release without waiting for UI quirks to be fixed.
5 years ago
Adam Ierymenko
b270d527f4
Basic plumbing for authentication requirement and piping through of URL information.
5 years ago
Adam Ierymenko
06730c7d1d
BSL date bump
6 years ago
Adam Ierymenko
52a166a71f
Relicense: GPLv3 -> ZeroTier BSL 1.1
7 years ago
Joseph Henry
0e597191b8
Updated licenses for 2019
7 years ago
Adam Ierymenko
65c07afe05
Copyright updates for 2018.
8 years ago
Adam Ierymenko
1b68d6dbdc
License header update.
9 years ago
Adam Ierymenko
5e6a4e5f5e
Send revocations automatically on deauth for instant kill, also fix some issues with the RP.
9 years ago
Adam Ierymenko
226123ca08
Refactor controller to permit sending of pushes as well as just replies to config requests.
9 years ago
Adam Ierymenko
2ba9343607
Encode and decode of tags and capabilities in NetworkConfig.
10 years ago
Adam Ierymenko
b2d048aa0e
Make Dictionary templatable so it can be used where we want a higher capacity.
10 years ago
Adam Ierymenko
e09c1a1c11
Big refactor mostly builds. We now have a uniform backward compatible netconf.
10 years ago
Adam Ierymenko
8b9519f0af
Simplify a bunch of NetworkConfig stuff by eliminating accessors, also makes network controller easier to refactor.
10 years ago
Adam Ierymenko
4e4fd51117
boring doc stuff
10 years ago
Adam Ierymenko
0d386f1c31
Add a bit of useful testing instrumentation to SqliteNetworkController.
11 years ago
Adam Ierymenko
b3516c599b
Add a rate limiting circuit breaker to the network controller to prevent flooding attacks and race conditions.
11 years ago
Adam Ierymenko
3ba54c7e35
Eliminate some poorly thought out optimizations from the netconf/controller interaction,
...
and go ahead and bump version to 1.0.4.
For a while in 1.0.3 -dev I was trying to optimize out repeated network controller
requests by using a ratcheting mechanism. If the client received a network config
that was indeed different from the one it had, it would respond by instantlly
requesting it again.
Not sure what I was thinking. It's fundamentally unsafe to respond to a message
with another message of the same type -- it risks a race condition. In this case
that's exactly what could happen.
It just isn't worth the added complexity to avoid a tiny, tiny amount of network
overhead, so I've taken this whole path out.
A few extra bytes every two minutes isn't worth fretting about, but as I recall
the reason for this optimization was to save CPU on the controller. This can be
achieved by just caching responses in memory *there* and serving those same
responses back out if they haven't changed.
I think I developed that 'ratcheting' stuff before I went full time on this. It's
hard to develop stuff like this without hours of sustained focus.
11 years ago
Adam Ierymenko
ea1859541c
More cleanup, and fix for the extremely unlikely case of identity collision.
11 years ago
Adam Ierymenko
f7b1437154
Putting the main binary back together...
11 years ago
Adam Ierymenko
6369c264e2
Rename netconf to controller and NetworkConfigMaster to NetworkController for consistency.
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
a8a92c5b89
A whole lot of Sqlite netconf master work, and some fixes elsewhere in the code.
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
c8c5d3b06e
Create netconf master if redis options are in local.conf.
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
60fb28a90a
Cleanup, new C++ netconf code is almost ready to test!
11 years ago
Adam Ierymenko
a369c69091
C++ netconf master Redis plumbing.
11 years ago