Commit Graph

41 Commits (master)

Author SHA1 Message Date
Avril 271e861169
Started BufferedEsock: A task-based ``wrapper" around an ESock that buffers its input and output.
3 years ago
Avril f8b6e3a0c6
This bug may make ESock **unusable** in this project entirely. Individual `SerializedMessage` sending/receiving _might_ work reliably since that is based on rigid size communication, but streamed data may be untenable. Any desync in streaming buffers causes complete failure.
3 years ago
Avril 2a3d9e0c3a
For some reaosn, any difference between exact bytes written and read (even if they are identical, just spread over different `write` calls) causes the reading half to produce garbage?
3 years ago
Avril e5fce0a045
XXX: ESock doesn"t work! :/ The first encrypted write/read succeeds, but any subsequent calls to write/read produce garbage...
3 years ago
Avril 20bf0f1649
Removed install of a panic hook in unit test
3 years ago
Avril 2a49d17528
ESock tested: Exchange OK, Session OK, Encrypted + Unencrypted reads + writes OK. All works (so far)! :^)
3 years ago
Avril dc307c6d06
ESock: Added `split()` and `unsplit()`
3 years ago
Avril edeb2ffee7
Added AsyncWrite and AsyncRead impls to `ESock<W,R>`
3 years ago
Avril b6b3bb0fd5
Improved error messages for `set_encrypted_read()` and `exchange()`.
3 years ago
Avril 087a076b40
Added better error messages and context to `ESockSessionKey::from_ciphertext()`
3 years ago
Avril 3991d82f93
Added better error messages and context to `ESockSessionKey::to_ciphertext()`
3 years ago
Avril 3a5331b5f1
Added `bin` module for byte slice concat.
3 years ago
Avril 0f7f22f290 ESock: Added `exchange_unpin()`. Start `Exchange` future for `exchange()` method that will work on non-Unpin types too. (Requires specific implemented future.)
3 years ago
Avril 7f44c83ce3
Added AsyncSource to ESock<W, R>
3 years ago
Avril d349c018c2
Using AsyncSource instead of dump Duplex hack.
3 years ago
Avril 7f8acbba7f
Bumped version of `chacha20stream` to 2.0: Added support for `Read` and `AsyncRead` en/decryption.
3 years ago
Avril 7216f0f8de
Added `ReverseSink<R>`, temporary type for handling reads (chacha20stream currently only has a wrapper type for writes.)
3 years ago
Avril 62f3c384b2
Start `enc` socket wrapper
3 years ago
Avril d271f164fa
Start sock capabilities
3 years ago
Avril 538080a6f1 Added MAX_BODY_SIZE
3 years ago
Avril cf71fe20ab
Set `StackVec` stack size to 2KB (from 4KB).
3 years ago
Avril 37a00d1099
Improved de/serialise error messages
3 years ago
Avril 46cd0e4a9f
from_buffer(): Implemented.
3 years ago
Avril 52d19c730b
Start reworking SerializedMessage -> binary pipeline.
3 years ago
Avril 6afb148068 Added `UntypedSerializedMessage`: A `SerializedMessage` whos original value type has been erased. A `SerializedMessage<V>` can be converted into this with `.into_untyped()`, and can be converted back with the `unsafe` function `into_typed<V>()`.
3 years ago
Avril c286708bff
Start: `UntypedMessageValue` for unsafe casting of `SerializedMessage`s
3 years ago
Avril 7765c33070
Moved `MessageValue` to own file
3 years ago
Avril ab97278dbd
Added `subtrait!` macro for creating a blanket-impl trait that ``inherits" from one or more different traits in a few different ways (normal -> `Sized` types only, `dyn`: Sized and unsized types , `virtual`: Sized and unsized types, downcastable.)
3 years ago
Avril 2308b61b58 Start: Raw socket handling function
3 years ago
Avril d3c43b323b
Added task cancelling module
3 years ago
Avril c98f1c5c6c Added message header accessors.
3 years ago
Avril 2931a3e8cb
Moved message tests to own file.
3 years ago
Avril 674c7a1171
Sign & Encrypt tests working okay
3 years ago
Avril 101ce28602
Encrypt + Sign tests work.
3 years ago
Avril 226901861a
Start adding stack-allocation helper functions. (ext.rs)
3 years ago
Avril 4877a843bd
Added `DefaultMessageSender`, `DefaultMessageReceiver`, `DefaultMessageSenderReceiver` types, which function the same as `()` for the cases of the trait(s) that they implement.
3 years ago
Avril 36f3ed4586
Abstracted message serialisation test code.
3 years ago
Avril 1f2655a7f2
Basic message de/serialisation test passes. (Value -> Message -> SerializedMessage -> Bytes -> SerializedMessage -> Message -> Value). No encryption tests yet.
3 years ago
Avril 3e59440609 Message de/serial test written (currently failing due to serde_cbor being greedy when deserialising from reader)
3 years ago
Avril c41d5c2c28
Added `SerializedMessage::from_reader()` (reading untrusted messages)
3 years ago
Avril 9142244bca
Started `Message` protocol.
3 years ago