Commit graph

139 commits

Author SHA1 Message Date
Sean OMeara
0c91b75bbd silence compiler warnings about _unused_variables (#1852)
Tetanus noise xk (#1881)

* Noise XK work in progress.

* A whole lot more Noise_XK work... exchange almost done.

* Delete a bunch of commented out old Noise_IK code.

* Add back in send() and a few other things to Noise_XK ZSSP.

* Some p384 experiment in attic

* A ton of ZSSP work, and put MPL on ZSSP.

* updated kbkdf512 to use the modern nist standard

* Parameterize KBKDF on resulting output key size the way NIST likes.

* updated variable comment

* Make the label a const parameter on kbkdf.

* updated variable comment

* Add MPL to utils and other stuff.

* layout tweak

* Some more ZSSP work and a VDF we may use.

* warning removal

* More ZSSP work, add benchmarks for mimcvdf.

* Almost ready to test...

* Build fix.

* Add automatic retransmission in the earliest stages of session init.

* Just about ready to test... wow.

* It opens a session.

* ZSSP basically works...

---------

Co-authored-by: mamoniot <mamoniot@protonmail.com>

Warning removal.

remove old docs

Remove old tests from ZSSP, new test in main() can also be made into a unit test in the future.

Add key_info() to get key information.

Rekeying is now tested and works.

Show key fingerprint.

Factor out memory:: stuff, does not appear to have any real performance benefit.

Rework defragmentation, and it now tolerates very poor link quality pretty well.

Circuit breaker for incoming defrag queue, and ZSSP now works very well even under very poor network conditions.

Format tweak.

ZSSP API updates.

Just a bit of final ZSSP cleanup before moving to another thing.
2023-03-03 13:47:22 -05:00
Adam Ierymenko
181eb8ac34 cleanup 2023-01-04 11:09:21 -05:00
Adam Ierymenko
dc8fa144ad cleanup 2023-01-03 18:02:03 -05:00
Adam Ierymenko
ec600f994a Add both Valid and Verified typestates. 2023-01-03 17:58:28 -05:00
Adam Ierymenko
382688d251 Generalize typestates, make verified valid because its more correct for Identity. 2023-01-03 15:24:46 -05:00
Adam Ierymenko
f3433a9840 cleanup 2023-01-03 12:00:53 -05:00
Adam Ierymenko
9c82aa2b29 More trait simplification. 2023-01-03 10:18:47 -05:00
Adam Ierymenko
d9e68701b6 A bit more simplification of generics in VL1 and VL1Service. 2023-01-02 14:49:37 -05:00
Adam Ierymenko
2fcc9e63c6 Some renaming and generic simplification. 2022-12-31 16:03:02 -05:00
Adam Ierymenko
234e0ea0ee Renaming... 2022-12-21 20:00:15 -05:00
mamoniot
9c9510ef36 added secure_eq to a few places 2022-12-19 11:37:31 -05:00
Adam Ierymenko
49d9982aa2 Merge branch 'tetanus' of github.com:/zerotier/ZeroTierOne into tetanus 2022-12-13 09:55:40 -05:00
Adam Ierymenko
035d8203c4 A little cleanup and renaming. 2022-12-13 09:55:21 -05:00
Brenton Bostick
17d09ee258
fix typos (#1810) 2022-12-13 11:10:27 +01:00
Adam Ierymenko
cfa1d8434e remove base64 from cargo 2022-12-12 13:38:02 -05:00
Adam Ierymenko
d0d34e75fd Build fix due to base64 crate API changes. 2022-12-12 13:37:36 -05:00
Adam Ierymenko
312a14c593 Controller fix. 2022-12-07 14:17:31 -05:00
Adam Ierymenko
c94c0cfa7f More controller work: fix to Rule, change strategy for blacklisting lingering deauthed members to something cleaner and lighter, move Revocation into VL2 since it will likely stick around post-V1. 2022-12-06 17:36:20 -05:00
Adam Ierymenko
dff2605544 build fix 2022-12-05 17:01:51 -05:00
Adam Ierymenko
7c2e0b8507 Windows fixes... not quite ported yet but almost there. 2022-12-05 16:58:33 -05:00
Adam Ierymenko
49128a55cc Use ordered sets and maps in network configs to make them deterministic, and some other cleanup. 2022-12-02 16:08:15 -05:00
Adam Ierymenko
7771de0bf7 Merge branch 'tetanus' of github.com:/zerotier/ZeroTierOne into tetanus 2022-11-28 12:44:36 -05:00
Adam Ierymenko
42178d1716 cleanup 2022-11-28 12:44:29 -05:00
Brenton Bostick
40cce9dba6 fix typos in comments 2022-11-28 12:36:51 -05:00
Brenton Bostick
f8351ca47e fix typos in header comment 2022-11-28 12:36:35 -05:00
Adam Ierymenko
1d23f40226 import cleanup 2022-11-16 21:48:18 -05:00
Adam Ierymenko
19d973cfd4 (1) Implement typestate Verified for identity, (2) FileDatabase in controller now works. 2022-11-16 21:41:08 -05:00
Adam Ierymenko
68021b8a7f cleanup 2022-11-14 11:51:55 -05:00
Adam Ierymenko
6bf978d4de Some cleanup, move some more V1 only fields into V1 credentials struct. 2022-11-11 16:11:02 -05:00
Adam Ierymenko
5772a135f5 More work on controller: FileDB change detection, etc. 2022-11-10 18:25:36 -05:00
Adam Ierymenko
ceaba4f725
Fix some warnings by either factoring out or allowing in one case. 2022-11-03 15:37:12 -04:00
Adam Ierymenko
80cee57255
Moar controller. 2022-11-03 15:33:33 -04:00
Adam Ierymenko
ee4ce6a8ef
Tons of work: reorg traits to simplify, implement multicast authority stuff, other works in progress. 2022-11-03 11:11:04 -04:00
Adam Ierymenko
3266064549
Fixed name in network configs. 2022-10-28 22:25:03 -04:00
Adam Ierymenko
bc7a9e41bf
V2 network controller now provides a reply that at least parses! 2022-10-28 16:03:06 -04:00
Adam Ierymenko
bc31c35ae8
Getting there on V2 controller!!! 2022-10-27 19:32:33 -04:00
Adam Ierymenko
9e6617b324
More controller work and some ZSSP cleanup. 2022-10-27 15:03:23 -04:00
Adam Ierymenko
8a50427833
A bunch of reorg to partition off V1 stuff for future convenience, and more controller work. 2022-10-26 14:00:07 -04:00
Adam Ierymenko
bc5861c539
Make database in controller dynamic to prep for having multiple implementations. 2022-10-23 20:13:03 -04:00
Adam Ierymenko
d07d146260
A little renaming for the future. 2022-10-23 13:36:00 -07:00
Adam Ierymenko
752dbf4816
Have caller into inner protocol send cursor in case it needs to be different from 0/1. 2022-10-23 12:47:19 -07:00
Adam Ierymenko
b0ffd4f56b
cleanup 2022-10-23 12:17:56 -07:00
Adam Ierymenko
72f98dea14
cleanup 2022-10-23 11:04:16 -07:00
Adam Ierymenko
07eed995e7
cleanup 2022-10-23 10:50:34 -07:00
Adam Ierymenko
7cb52b112a
cleanup 2022-10-21 17:36:34 -07:00
Adam Ierymenko
c7b6a997be
docs 2022-10-21 16:54:44 -07:00
Adam Ierymenko
cf7f0b06df
Use a clever little hack to eliminate a great deal of cascading template sprawl from the core. 2022-10-21 16:50:07 -07:00
Adam Ierymenko
39aa46ebf5
Moar controller V2 2022-10-20 07:48:49 -07:00
Adam Ierymenko
f2028ce3a2
Refactor send method a bit to hide some backward compatibility detail from outside code. 2022-10-18 16:01:16 -04:00
Adam Ierymenko
23e73bbdd1
cleanup 2022-10-17 12:59:10 -04:00