Commit graph

164 commits

Author SHA1 Message Date
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
f5331b5bb9
More code cleanup, making earlier Rust code more rustic. 2021-03-18 16:00:24 -04:00
Adam Ierymenko
a708433146
Cleanup. 2021-03-14 11:46:16 -04:00
Adam Ierymenko
68fe57decd
Create and verify locators via CLI. 2021-03-11 21:37:04 -05:00
Adam Ierymenko
5d75ca0e30
Build fixes in Rust. 2021-03-09 23:36:35 -05:00
Adam Ierymenko
8c45fbe64c
C++ build fixes, fix regression in SharedPtr 2021-03-09 18:08:31 -05:00
Adam Ierymenko
f82085cede
cleanup, warning removal. 2021-03-08 14:05:33 -05:00
Adam Ierymenko
8474508412
Cleanup and optimization. 2021-03-02 11:18:04 -05:00
Adam Ierymenko
e1795bacef
Web server... 2021-02-26 01:16:24 -05:00
Adam Ierymenko
0f49c7510b
Swap out warp for simple hyper web server in Rust, and we will use web sockets for webby-style communication since WebRTC is a mess. 2021-02-25 10:49:35 -05:00
Adam Ierymenko
26e8859d99
Copyright notices, dates. 2021-02-22 22:58:16 -05:00
Adam Ierymenko
d201cdec2a
A bunch of logging and tracing. 2021-02-19 17:05:53 -05:00
Adam Ierymenko
411373dd2c
Tons of service work including trace events, etc. 2021-02-19 00:32:47 -05:00
Adam Ierymenko
a321ee6c28
Bunch more Rust work, and it builds again. 2021-02-04 23:20:30 -05:00
Adam Ierymenko
f9deec7872
Rust service work in progress... 2021-02-03 14:41:42 -05:00
Adam Ierymenko
c29a64602a
CLI parser stuff... 2021-01-28 19:08:28 -05:00
Adam Ierymenko
b7d7e8eb40
cleanup 2021-01-26 11:45:42 -05:00
Adam Ierymenko
deec3b807b
A ton of work in progress on service: logging, physical link enumeration, data store, local config, etc. 2021-01-21 21:10:11 -05:00
Adam Ierymenko
896d75fe86
More work on service itself. 2021-01-20 00:02:39 -05:00
Adam Ierymenko
346bb7cf99
Fast UDP I/O for MacOS, others will be easy to add. 2021-01-15 21:28:46 -05:00
Adam Ierymenko
e2dbfc12a5
Certs work, add integer modpow to MIMC52 for armel. 2021-01-13 13:19:31 -05:00
Adam Ierymenko
ba9c51ead1
docs 2021-01-12 20:46:06 -05:00
Adam Ierymenko
d808d33f91
Rework how V1 identities work a bit to introduce a deterministic PoW (actually a VDF) function. This stuff was already developed, just not integrated yet, and this is the time to do it. 2021-01-12 20:45:06 -05:00
Adam Ierymenko
053452b4a0
Various cleanup... 2021-01-12 15:23:35 -05:00
Adam Ierymenko
d6969c41f0
More rust tests, fix to enum from primitive. 2021-01-12 11:49:29 -05:00
Adam Ierymenko
d97643a390
Rust tests 2021-01-08 17:43:28 -05:00
Adam Ierymenko
20b6f347c8
Comments, fix to Rust bindgen, cleanup, warning removal, etc. 2021-01-08 14:59:05 -05:00
Adam Ierymenko
5ba672274c
Rust cleanup. 2021-01-04 19:36:47 -05:00
Adam Ierymenko
07b99a982d
Clean up zerotier.h to by proxy clean up Rust bindings, and implement inetaddress in Rust. 2021-01-01 22:24:53 -05:00
Adam Ierymenko
ce40a1df8a
Remove CRL from Certificate as it really does not belong there, and Rust cleanup. 2021-01-01 17:09:30 -05:00
Adam Ierymenko
83d74d8b67
Rust API wrapper for certificates is done, I think. Time to test. 2020-12-31 15:11:01 -05:00
Adam Ierymenko
927344f197
More Rust plumbing... 2020-12-29 22:49:43 -05:00
Adam Ierymenko
ab2870cbb7
MOAR rust. 2020-12-14 23:32:49 -05:00
Adam Ierymenko
7fa7f6f07a
Getting more rustic... 2020-12-14 16:54:43 -05:00
Adam Ierymenko
7d951783ca
A bunch of little warning removal and format fix things. 2020-12-04 15:52:30 -05:00
Adam Ierymenko
ec76f6e1d2
Mirror over a few more AES fixes. 2020-12-03 22:29:38 -05:00
Adam Ierymenko
c943d0e807
InetAddress fix ported from 1.6 2020-12-03 22:28:40 -05:00