Commit graph

5885 commits

Author SHA1 Message Date
Adam Ierymenko
f898029241
formatting, aes-gmac-siv crate 2021-07-14 15:38:37 -04:00
Adam Ierymenko
18051ef76a
Merge branch 'edge' of github.com:zerotier/ZeroTierOne into edge 2021-07-06 16:35:41 -04:00
Adam Ierymenko
c3dd3bb7fc
... a bunch of stuff that has been sitting here for too long ... 2021-07-06 16:35:20 -04:00
Sean OMeara
5dd65e8e47
Merge pull request #1418 from zerotier/someara/json-hpp
updating json.hpp to 3.9.1
2021-06-24 23:31:11 +02:00
Sean OMeara
ef7a6f0ae1 updating json.hpp to 3.9.1 2021-06-24 20:27:47 +02:00
Adam Ierymenko
a513d160c5
Build fixes, warning removal. 2021-05-19 16:24:21 -04:00
Adam Ierymenko
ea650ad7c5
Some formatting and perf fixes. 2021-05-19 15:49:55 -04:00
Adam Ierymenko
0290446000
Clang-format changes. 2021-05-18 12:43:13 -04:00
Adam Ierymenko
68c64d530b
Formatting and cleanup, warning removal. 2021-05-18 12:36:41 -04:00
Adam Ierymenko
a8e3cffd16
Some cleanup, certificate self-signing fixes, test fixes, test full certificate life cycle including CSR. 2021-05-17 23:40:13 -04:00
Adam Ierymenko
ec2919ac2e
Add a subject signature to the certificate to ensure no CRL tampering has occurred, even by the signer. 2021-04-27 19:10:48 -04:00
Adam Ierymenko
76244f0474
Turn off wrapping as it makes things hard to follow in some cases. 2021-04-26 20:33:38 -04:00
Adam Ierymenko
cd68474e47
More formatting stuff.... 2021-04-26 20:28:30 -04:00
Adam Ierymenko
91556d0c55
Build fixes. 2021-04-26 18:11:01 -04:00
Adam Ierymenko
12e7546ebc
ZeroTier standard .clang-format -- switch to spaces, match indentation of Rust, mostly based on LLVM format. 2021-04-26 08:55:28 -04:00
Adam Ierymenko
2698dab696
Merge branch 'edge' of github.com:zerotier/ZeroTierOne into edge 2021-04-26 08:37:30 -04:00
Adam Ierymenko
6798946bb9
Remove 11.0.0.0/8 from "pseudoprivate" scope. 2021-04-26 08:37:16 -04:00
Adam Ierymenko
251cc082f2
Implement usage flags in certificate, make root sets require a usage flag and a more general local trust flag, and clean up Identity return in Rust Node. 2021-04-23 18:16:49 -04:00
Joseph Henry
d2cc021f4e
Add .clang-format style config file 2021-04-23 12:17:22 -07:00
Adam Ierymenko
24ab618123
Certificate self-test passes now. 2021-04-20 21:45:50 -04:00
Adam Ierymenko
fdafddafa0
Warning removal. 2021-04-20 18:57:19 -04:00
Adam Ierymenko
e7b7d7444e
Stub out certificate revocations and harden certificate structure verification to make sure there are no dangling pointers. 2021-04-20 17:32:56 -04:00
Adam Ierymenko
0acc731bf4
Simplify Locator slightly. 2021-04-19 17:13:05 -04:00
Adam Ierymenko
8153211b26
Plumb cert changes through to Rust. 2021-04-19 16:17:31 -04:00
Adam Ierymenko
e7ed8051c6
Refactor certificates to have their own keys instead of being signed by identities, and fix certificate chain validation to be like how X509 certs are validated. 2021-04-15 23:20:02 -04:00
Adam Ierymenko
ad92a46b8d
Error reformatting, and use the suspend-aware monotonic clock on Linux. 2021-04-13 18:57:44 -04:00
Adam Ierymenko
37d706b635
Some cleanup. 2021-04-12 19:17:19 -04:00
Adam Ierymenko
8d9067e982
A bunch of simplification in SymmetricKey and the ephemeral re-keying logic. Not on yet, but the structure is all there. 2021-04-09 23:18:29 -04:00
Adam Ierymenko
de6fadc12d
Fix a bug in Topology path GC and make it more efficient. 2021-04-07 19:31:53 -04:00
Adam Ierymenko
e26e77dd6d
Forgot some consts. 2021-04-07 19:04:24 -04:00
Adam Ierymenko
b40eba8fc7
More refactoring: rename RuntimeEnvironment to Context to be more descriptive and make it a reference instead of a raw pointer. 2021-04-07 18:54:52 -04:00
Adam Ierymenko
c9dc715389
Rust build fixes. 2021-04-06 17:51:04 -04:00
Adam Ierymenko
89e9eb755e
Big core refactor to create a CallContext to carry several annoying state variables through the call chain. Also remove some warnings. 2021-04-06 17:33:00 -04:00
Adam Ierymenko
0f4d18c4ed
Add serialize and deserialize functions to TrustStore. 2021-04-02 18:12:30 -04:00
Adam Ierymenko
38fcefceee
Small fix for VAES. 2021-04-02 15:32:12 -04:00
Adam Ierymenko
b39d4bed16
Break out a few things from Node in the core to make code cleaner. 2021-04-02 15:28:25 -04:00
Adam Ierymenko
7ad660c3ef
Break out certificate trust store into a separate object and simplify and clean up certificate verification code. 2021-03-31 22:15:26 -04:00
Adam Ierymenko
11d367d5ec
Attic cleaning, some work on certs, etc. 2021-03-31 15:33:31 -04:00
Adam Ierymenko
4a60ae5736
Some efficiency improvements. 2021-03-26 18:43:50 -04:00
Adam Ierymenko
2d072de515
HTTP digest auth for service API, and remove unnecessary imports in Rust code. 2021-03-26 00:06:26 -04:00
Adam Ierymenko
50675004ce
JSON patching for RESTful object update and some other stuff. 2021-03-25 15:36:12 -04:00
Adam Ierymenko
5be66eda2b
Flesh out HTTP API, break into functions to make code more readable. 2021-03-24 00:23:25 -04:00
Adam Ierymenko
ce5edba44d
Rename "web" to "http." 2021-03-23 18:11:08 -04:00
Adam Ierymenko
5a0de399d7
Implement most of /status 2021-03-23 17:53:39 -04:00
Adam Ierymenko
1b9ec2d9c3
Web request helper and other stuff. 2021-03-19 17:21:16 -04:00
Adam Ierymenko
6df6a955ba
It makes web requests, and fix some warnings. 2021-03-18 20:47:02 -04:00
Adam Ierymenko
f5331b5bb9
More code cleanup, making earlier Rust code more rustic. 2021-03-18 16:00:24 -04:00
Adam Ierymenko
c0bab849ef
Build fixes, add some standard derives. 2021-03-17 17:53:24 -04:00
Adam Ierymenko
f38f40693f
Move CLI stuff into main. 2021-03-16 20:51:15 -04:00
Adam Ierymenko
e1d7b69acb
Make main() more rustic, fix IPv6 fragmentation bit on MacOS, etc. 2021-03-16 19:37:19 -04:00