Fork of github.com/matrix-org/matrix-rust-sdk
 
 
Go to file
Damir Jelić ec55258be9 crypto: Handle decrypted to-device events as well
Usually only room keys and forwarded room keys are sent as encrypted
to-device events, those are specially handled to avoid accepting room
keys coming in unencrypted.

Some clients might send out other events encrypted which might lower
metadata leakage and the spec doesn't disallow it.

This patch handles decrypted events the same way as non-encrypted ones,
we're still special casing the decryption handling to avoid decryption
loops/bombs (i.e. events that are encrypted multiple times).
2021-05-13 11:08:13 +02:00
.github/workflows ci: Dedicated matrix-sdk-appservice pipeline 2021-05-10 09:56:33 +02:00
contrib/mitmproxy contrib: Make the failures mitmproxy script a bit smarter. 2021-03-02 12:24:23 +01:00
matrix_sdk crypto: Add a method to check it the SAS flow supports emoji 2021-05-12 20:09:02 +02:00
matrix_sdk_appservice matrix-sdk: Bump ruma 2021-05-12 19:19:42 +02:00
matrix_sdk_base matrix-sdk: Bump ruma 2021-05-12 19:19:42 +02:00
matrix_sdk_common matrix-sdk: Bump ruma 2021-05-12 19:19:42 +02:00
matrix_sdk_crypto crypto: Handle decrypted to-device events as well 2021-05-13 11:08:13 +02:00
matrix_sdk_test matrix-sdk: Bump ruma 2021-05-12 19:19:42 +02:00
matrix_sdk_test_macros matrix-sdk: Add a bunch of readmes to the crates. 2020-05-26 19:33:13 +02:00
.gitignore matrix_sdk_crypto: Fix clippy warnings add wasm emscripten to .gitignore 2020-08-04 20:02:09 -04:00
.pre-commit-config.yaml nio-rust: Add a pre-commit config. 2019-11-10 18:33:27 +01:00
Cargo.toml appservice: Initial version 2021-05-10 07:51:52 +02:00
LICENSE rust-sdk: Switch the license to Apache 2.0. 2020-02-21 16:54:05 +01:00
Makefile matrix-sdk: Split out the crypto part of the sdk into a separate crate. 2020-04-29 09:48:00 +02:00
README.md README: Add a badge that points to the latest master docs 2021-03-02 11:40:02 +01:00
tarpaulin.toml tarpaulin: Disable tarpaulin debugging. 2020-08-11 10:55:10 +02:00

README.md

Build Status codecov License #matrix-rust-sdk Docs - Master Docs - Stable

matrix-rust-sdk

matrix-rust-sdk is an implementation of a Matrix client-server library in Rust.

Project structure

The rust-sdk consists of multiple crates that can be picked at your convenience:

  • matrix-sdk - High level client library, with batteries included, you're most likely interested in this.
  • matrix-sdk-base - No (network) IO client state machine that can be used to embed a Matrix client in your project or build a full fledged network enabled client lib on top of it.
  • matrix-sdk-crypto - No (network) IO encryption state machine that can be used to add Matrix E2EE support to your client or client library.

Status

The library is in an alpha state, things that are implemented generally work but the API will change in breaking ways.

If you are interested in using the matrix-sdk now is the time to try it out and provide feedback.

License

Apache-2.0