Commit Graph

35 Commits

Author SHA1 Message Date
Mathias Hall-Andersen
4ff328b7da First full test of pure WireGuard 2019-10-28 14:48:24 +01:00
Mathias Hall-Andersen
a08fd4002b Work on Linux platform code 2019-10-13 22:26:12 +02:00
Mathias Hall-Andersen
794933d6dd Work on peer timers 2019-09-22 21:35:06 +02:00
Mathias Hall-Andersen
32c030367c WIP: Handshake queue and workers 2019-09-15 21:10:23 +02:00
Mathias Hall-Andersen
02d9bdcc96 Full inbound/outbound router test 2019-09-10 21:42:21 +02:00
Mathias Hall-Andersen
e371d39052 Begin work on full router interaction unittest 2019-09-08 12:59:35 +02:00
Mathias Hall-Andersen
af9c76452f More extensive outbound test 2019-09-04 21:42:10 +02:00
Mathias Hall-Andersen
6d11da441b Simply passing of JobBuffer ownership 2019-09-04 19:08:13 +02:00
Mathias Hall-Andersen
f55014ef8f Wake workers when submitting work 2019-09-02 23:32:07 +02:00
Mathias Hall-Andersen
929eadb651 Outbound cryptkey routing 2019-09-01 17:16:01 +02:00
Mathias Hall-Andersen
51179f5433 Better management of key material 2019-08-31 15:03:14 +02:00
Mathias Hall-Andersen
0520b28ac2 Move to RustCrypto AEAD crate for handshake 2019-08-30 19:46:00 +02:00
Mathias Hall-Andersen
cdbcd55eda Added sealing/opening to the router worker 2019-08-27 21:17:55 +02:00
Mathias Hall-Andersen
5f3c4d2e27 Update the blake2 crate to fix bug upstream
Included basic sanity check for the HKDF macroes, to avoid regression in future.
2019-08-26 15:00:14 +02:00
Mathias Hall-Andersen
2272e5250f Move to hjul crate
Moved timer code into seperate crate (`hjul').
2019-08-24 23:41:05 +02:00
Mathias Hall-Andersen
c5aba7183d Initial version of timer framework 2019-08-22 14:59:15 +02:00
Mathias Hall-Andersen
5aeea9b619 Begin drafting cross-platform interface 2019-08-16 22:00:48 +02:00
Mathias Hall-Andersen
726163b7f1 Layout work on router 2019-08-16 12:33:10 +02:00
Mathias Hall-Andersen
657a1ccb44 Implement add_keypair semantics 2019-08-13 19:42:05 +02:00
Mathias Hall-Andersen
723a1b8e85 Port replay filter and sketch router state 2019-08-12 21:04:19 +02:00
Mathias Hall-Andersen
b33381331f Concurrent rate limiter
The new rate limiter allows multiple simultaneous .allow calls.
Also delegated GC to tokio.
2019-08-07 22:51:58 +02:00
Mathias Hall-Andersen
a12e6e139c Add rate limiter check to handshake messages. 2019-08-06 13:02:13 +02:00
Mathias Hall-Andersen
fe0c1532d9 Added property-based test for full DoS interaction 2019-08-03 14:36:14 +02:00
Mathias Hall-Andersen
2bdcda067c Remove rust-crypto, move to libsodium bindings 2019-08-02 17:18:37 +02:00
Mathias Hall-Andersen
1cfd5aea1a Move to nested handshake message structure
Having the nested structure:

    Handshake Message:
        Noise part (zerocopy message)
        MAC footer part (zerocopy message)

Greatly simplifies processing the MAC fields,
since the MAC footer covers the noise part, which can
be accessed as bytes using AsBytes.
2019-07-30 15:28:11 +02:00
Mathias Hall-Andersen
2c81abbe79 Restructured for wireguard-rs 2019-07-28 17:09:27 +02:00
Mathias Hall-Andersen
5efb318171 Move parser code to zerocopy 2019-07-26 15:46:24 +02:00
Mathias Hall-Andersen
27f8fd8e34 Fixed GenericArray version 2019-07-25 21:43:25 +02:00
Mathias Hall-Andersen
95080c870f Tested full handshake 2019-07-24 18:47:33 +02:00
Mathias Hall-Andersen
c77697b8ed Finish handshake exchange 2019-07-22 23:40:04 +02:00
Mathias Hall-Andersen
e0e95d9679 Begin creation of response 2019-07-18 19:52:23 +02:00
Mathias Hall-Andersen
5a5d09bb41 Create initiation message 2019-07-16 23:37:25 +02:00
Mathias Hall-Andersen
7805fd9f59 Begin work on creating initiation 2019-07-13 23:15:01 +02:00
Mathias Hall-Andersen
dfed3b448f Add peers and psks to device 2019-07-12 14:49:53 +02:00
Mathias Hall-Andersen
9154c997fa Encoding / decoding of messages 2019-07-10 18:22:48 +02:00