Adam Ierymenko
1f2e94a51d
Some optimization and raw memory access cleanup.
2020-03-27 07:40:14 -07:00
Adam Ierymenko
e9da35bac3
Harden some stuff around COMs and members of networks.
2020-03-25 13:21:50 -07:00
Adam Ierymenko
416068f68e
Regularize use of fingerprint concept across code.
2020-03-02 12:09:38 -08:00
Adam Ierymenko
f21ecb3762
Yet more major and very nit-picky refactoring for performance, etc. Also use std::atomic<> now with a TODO to implement a shim if we ever do need to build this on a pre-c++11 compiler.
2020-02-12 14:04:25 -08:00
Adam Ierymenko
df346a6df6
Work in progress... clean up memcpy and create an annotation for that, lots more porting to new Buf/Protocol code, etc.
2020-02-03 13:00:13 -08:00
Adam Ierymenko
cdc6c42375
Take Dictionary behind the barn...
2020-01-25 18:02:11 -08:00
Adam Ierymenko
d5b9a54c55
Continuing work on new buffer type...
2020-01-25 01:17:56 -08:00
Adam Ierymenko
59da359b06
More porting to new Buf system.
2020-01-24 23:36:08 -08:00
Adam Ierymenko
eef70e198b
Version 2.x notice updates and other boring stuff.
2020-01-20 08:46:20 -08:00
Adam Ierymenko
ef64e6a336
Build fixes, cleanup
2020-01-08 21:24:47 -08:00
Adam Ierymenko
3fbfad5585
cleanup
2020-01-07 14:03:50 -08:00
Adam Ierymenko
891bf99894
work in progress
2019-10-15 12:49:03 -07:00
Adam Ierymenko
592e743349
Yet more multicast work.
2019-09-09 15:49:17 -07:00
Adam Ierymenko
59ee0cfe88
Safety upgrades to code
2019-08-28 10:34:32 -07:00
Adam Ierymenko
6f6138c500
Merge relicensing change from dev
2019-08-23 09:27:13 -07:00
Adam Ierymenko
52a166a71f
Relicense: GPLv3 -> ZeroTier BSL 1.1
2019-08-23 09:23:39 -07:00
Adam Ierymenko
d7a31088ba
Cleanup, warning removal, cppcheck informed cleanup.
2019-08-14 10:35:57 -07:00
Adam Ierymenko
d81549a7b1
Various other fixes including removal of more mem*() issues and netlink fixes for AARCH64.
2019-03-25 22:19:52 +00:00
Adam Ierymenko
e1091611da
More mem*() stuff...
2019-03-25 12:41:59 -07:00
Joseph Henry
0e597191b8
Updated licenses for 2019
2019-01-14 10:25:53 -08:00
Adam Ierymenko
f7019d9e80
Tie up the rest of hub and spoke designated replicator multicast mode.
2018-01-26 22:14:10 -05:00
Adam Ierymenko
65c07afe05
Copyright updates for 2018.
2018-01-08 14:33:28 -08:00
Adam Ierymenko
16613ab5fb
Clean up remote tracing code, add per-network remote trace settings, add remote trace level, and make local trace output readable again.
2017-12-04 14:40:10 -08:00
Adam Ierymenko
2d858b05ac
Another fix for ye old tyme clients.
2017-09-01 12:03:31 -07:00
Adam Ierymenko
dab0fb9e05
Remote trace: plumbing, replace old TRACE with calls to Trace object.
2017-07-07 16:58:05 -07:00
Adam Ierymenko
d2415dee00
Cleanup.
2017-07-06 16:11:11 -07:00
Adam Ierymenko
355cce3938
Rename Utils::snprintf due to it being a #define on one platform.
2017-06-27 11:31:29 -07:00
Adam Ierymenko
107e3e4106
First pass of configurable MTU and max MTU increase.
2017-05-04 17:12:02 -07:00
Adam Ierymenko
1b68d6dbdc
License header update.
2017-04-27 20:47:25 -07:00
Adam Ierymenko
10185e92fa
Certificate of ownership -- used to secure against IP address spoofing, especially for IPv4 and regular IPv6.
2017-02-23 11:47:36 -08:00
Adam Ierymenko
31db768e4d
A bit of code cleanup.
2017-02-04 00:23:31 -08:00
Adam Ierymenko
c9ee8612e4
Credential TTL (tags/capabilities) should be credential time max delta, since we could get pushed one that is newer.
2016-09-07 12:12:52 -07:00
Adam Ierymenko
68b4ca9b31
Cleanup.
2016-08-23 11:52:10 -07:00
Adam Ierymenko
9a3c652a51
Get rid of expiration in Capability and Tag and move this to NetworkConfig so it can be set network-wide and reset if needed. Also add NetworkConfig field for this and centralize checking of credential time validity.
2016-08-22 18:06:46 -07:00
Adam Ierymenko
4d498b3765
Handling of multi-part chunked network configs on the inbound side.
2016-08-09 13:14:38 -07:00
Adam Ierymenko
2ba9343607
Encode and decode of tags and capabilities in NetworkConfig.
2016-08-09 08:32:42 -07:00
Adam Ierymenko
91940cbcf5
Kill network preferred relays -- this feature is gone (and was seldom used anyway) in favor of federation.
2016-08-02 14:40:26 -07:00
Adam Ierymenko
d3b0081447
Cleanup...
2016-07-28 12:09:58 -07:00
Adam Ierymenko
eaf6d6c938
Basic L2/L3 filter for rules engine (not integrated yet) and some cleanup.
2016-07-25 15:52:16 -07:00
Adam Ierymenko
38dfebad8c
IPv6 NDP emulation flag in NetworkConfig, and implement Docker-friendly
...
(and other host friendly) IPv6 /80 magic subnetting to allow massive
multicast-free NDP emulated IPv6 networks where each host can have a
/48 worth of IPv6 IPs for internal containers, VMs, etc.
Alan Kay, thou art avenged.
https://ivanovivan.wordpress.com/2010/09/13/alan-kay-quotes/
2016-06-23 22:41:14 -07:00
Adam Ierymenko
330c80f3f5
Add rule type to match a COM field of the peer by ID and value because this will be powerful.
2016-06-21 08:09:20 -07:00
Adam Ierymenko
b2d048aa0e
Make Dictionary templatable so it can be used where we want a higher capacity.
2016-06-21 07:32:58 -07:00
Adam Ierymenko
37afa876a7
Linux bug fixes, small controller fix.
2016-06-17 00:21:58 +00:00
Adam Ierymenko
901b75e756
New format now integrated, and it works.
2016-06-16 15:48:58 -07:00
Adam Ierymenko
e09c1a1c11
Big refactor mostly builds. We now have a uniform backward compatible netconf.
2016-06-16 12:28:43 -07:00
Adam Ierymenko
7ee3743c3d
Refactor controller to send both old and new format netconf.
2016-05-11 08:49:15 -07:00
Adam Ierymenko
8b9519f0af
Simplify a bunch of NetworkConfig stuff by eliminating accessors, also makes network controller easier to refactor.
2016-05-06 16:13:11 -07:00
Adam Ierymenko
0f17077b3d
Merge gateways and routes in netconf since they are the same thing.
2016-05-06 10:57:53 -07:00
Adam Ierymenko
b9dba97fdb
Bunch more refactoring for an even more compact NetworkConfig representation, especially rules.
2016-04-26 17:11:25 -07:00
Adam Ierymenko
e731fc1a3a
Replace two bools in NetworkConfig with a flags field.
2016-04-26 08:40:26 -07:00