Commit Graph
366 Commits
Author SHA1 Message Date
Lee Smet d397a1fa26 Clean up code in message.rs
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:57:05 +02:00
Lee Smet 4cf601b22e Finish sending messages
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 848c375251 Change completed message collection to VecDequeue
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 7de0cc0bf2 Set message ID when sending init packet
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 0167df4b5e Transform chunks
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 0a00985698 Generate replies for received message packets
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet c8f53562ad Implement message reassembly and checksum
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 8f319439d9 Add Blake3 dependency
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet de84528351 Implement message handling
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 139fb238ba Start message processing
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 492ac7ef80 Allow access to Flags field without mutable ref
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet a02725120e Take proper type in Flags PhantomData marker
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet a57b85303e Add tests to see if message constructors set flags
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 64fa8758b5 Expose Flags on (mutable) message header
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 37104e46fa Add into_inner methods for message types
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 25e61c4fac Set right flag on buffer when creating messages
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 71abca419a Move flags modifiers to FlagsMut struct
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 74b80a09a9 Flesh out individual message format
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet d92587c5ea Add owned MessagePacket and MessageInit
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet e22abebb11 Add submodules for message types
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 8fdc0d95da Add MessagePacketMut
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 72c6b331a9 Add flag setters to MessagePacketHeaderMut
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 8c57334394 Access message id through buffer
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet 8f7ba1a813 Add header struct fo rmessage packet
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
Lee Smet c4b3f4c3ea Initial message structure
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-10-23 15:35:15 +02:00
kristof de spiegeleer 4085037dd4 Update LICENSE
Signed-off-by: kristof de spiegeleer <kristof@incubaid.com>
2023-10-12 05:41:25 +03:00
Lee Smet 63cebcd47b Add missing constants
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-27 15:13:30 +02:00
Lee Smet 979ed476cb Remove etherparse dependency
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-27 15:04:51 +02:00
Lee Smet ad95fb2712 Improve src and dst ip extraction
Since we only care about these fields, don't parse the full header

Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-27 15:02:08 +02:00
Lee Smet 39ac4ebd0d Correct typo on peer constant
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-27 11:22:49 +02:00
Lee Smet fcfab20d82 Make peer send buf size a constant
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-27 10:48:15 +02:00
Lee Smet 3e1bbe63e5 Add release build optimizations
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-26 17:37:09 +02:00
Lee Smet 57e8b8e8e0 Set addr on proper veth pair
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-26 16:32:49 +02:00
Lee Smet 352f2f2903 Add protocol version in packet header
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-25 16:14:35 +02:00
Lee Smet 739d3871f5 Allow access to PacketBuffer header
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-25 15:45:53 +02:00
Lee Smet e2aa2bdcdf Update dependencies
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-25 14:16:06 +02:00
dependabot[bot] 6ee18f40cd Bump aes-gcm from 0.10.2 to 0.10.3
Bumps [aes-gcm](https://github.com/RustCrypto/AEADs) from 0.10.2 to 0.10.3.
- [Commits](https://github.com/RustCrypto/AEADs/compare/aes-gcm-v0.10.2...aes-gcm-v0.10.3)

---
updated-dependencies:
- dependency-name: aes-gcm
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-25 13:44:48 +02:00
Lee Smet 02dfbfb870 Fix PacketBuffer tests
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-25 13:34:26 +02:00
Lee Smet affe79b0c2 Reserve space for a header inside encrypted data
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-25 11:41:53 +02:00
Lee Smet 82a9ccde9b Clean up obsolete comment
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-22 16:14:21 +02:00
Lee Smet c96f42f4f6 Standardize arguments in tun setup
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-22 16:13:58 +02:00
Lee Smet d98a8b8d5c Continue the extract loop instead of returning
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-22 16:09:06 +02:00
Lee Smet ff4e1941f7 Use subnets in TUN code
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-22 15:24:23 +02:00
Lee Smet d84d52d9f9 Implement a data plane to handle user data
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-22 11:58:24 +02:00
Lee Smet 188415b6de Add basic DataPacket documentation
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-21 17:15:01 +02:00
Lee Smet da0f1c83d2 Expand DataPacket header to be 4 bytes
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-21 17:04:17 +02:00
Lee Smet d873c67492 Add basic packet docs
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-21 16:46:19 +02:00
Lee Smet a29c058652 Expand Packet header to be 4 bytes
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-21 16:02:23 +02:00
Lee Smet d90b65974c Remove obsolete clone
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-21 15:50:03 +02:00
Lee Smet 49f1b1cbc3 Fix data packet source IP transmission
Signed-off-by: Lee Smet <lee.smet@hotmail.com>
2023-09-21 15:12:39 +02:00