Commit graph

1208 commits

Author SHA1 Message Date
Damir Jelić
bb3b59ac37 crypto: Add initial support to decrypt megolm encrypted events. 2020-03-25 15:03:10 +01:00
Damir Jelić
ae4d90057a crypto: Wrap inbound group sessions. 2020-03-25 11:32:40 +01:00
Damir Jelić
d4f0799e6c crypto: Create inbound sessions from room key events. 2020-03-24 17:25:01 +01:00
Damir Jelić
765108a10c machine: Better room key parsing. 2020-03-24 16:21:06 +01:00
Damir Jelić
c72a5defee rust-sdk: Changes for the new ruma-api version. 2020-03-24 16:18:56 +01:00
Damir Jelić
4759dea9bd crypto: Decrypt to-device events. 2020-03-23 16:14:10 +01:00
Damir Jelić
9c467d40e0 Cargo.toml: Switch to olm-rs on gitlab. 2020-03-21 16:50:54 +01:00
Damir Jelić
4215f98e91 crypto: Add initial code for olm message decryption. 2020-03-21 16:41:48 +01:00
Damir Jelić
70dda32949 async_client: Don't assume that there are any state events. 2020-03-19 14:17:56 +01:00
Damir Jelić
39dd9280cb rust-sdk: Document our feature flags. 2020-03-19 13:55:58 +01:00
Damir Jelić
426fe1df0f crypto: Propagate a sqlite store error correctly. 2020-03-19 13:55:35 +01:00
Damir Jelić
1b8b3da733 rust-sdk: Add initial tracing/logging setup. 2020-03-19 13:55:04 +01:00
Damir Jelić
6efd216f35 cryptpo: Add test that the account is updated correctly in the store. 2020-03-19 09:39:22 +01:00
Damir Jelić
06722635e7 crypto: Add missing license headers. 2020-03-19 09:37:15 +01:00
Damir Jelić
5adab040e6 crypto: Restore the account if we're using the sqlite store. 2020-03-18 16:05:59 +01:00
Damir Jelić
4aba058695 crypto: Hook up the crypto store to the Olm machine. 2020-03-18 15:50:32 +01:00
Damir Jelić
d7ab847b98 store: Loading an account can fail because there is no account. 2020-03-18 14:29:01 +01:00
Damir Jelić
114911f800 base_client: Only import the std Result type if encryption is enabled. 2020-03-18 14:17:22 +01:00
Damir Jelić
7b70cb7e41 rust-sdk: Rework our error handling. 2020-03-18 14:15:56 +01:00
Damir Jelić
f517ac6f37 store: Add a store specific error type. 2020-03-18 12:38:47 +01:00
Damir Jelić
5db9eadd89 Cargo.toml: Clean up our dependencies. 2020-03-18 10:56:26 +01:00
Damir Jelić
6fb29451ce crypto: Add a memory only crypto store. 2020-03-18 10:42:46 +01:00
Damir Jelić
3b1f863419 crypto: Check the shared state of the account when checking for equality. 2020-03-18 10:42:11 +01:00
Damir Jelić
7a11a57b41 crypto: Add initial crypto store. 2020-03-18 09:41:49 +01:00
Damir Jelić
00138f7ae5 crypto: Expose the pickling methods for the account. 2020-03-18 09:38:41 +01:00
Damir Jelić
708a8b1b06 Cargo.toml: Use tokio's delay_for instead of async-std's sleep. 2020-03-16 13:31:03 +01:00
Damir Jelić
bd53e18aa9 Cargo.toml: Use the tokio async test macro. 2020-03-16 13:24:54 +01:00
Damir Jelić
aa1e69e98b README: Add the build status. 2020-03-15 13:02:20 +01:00
Damir Jelić
877d8257ef Revert "travis: Add Windows to the CI."
This reverts commit cd152d97f1.
2020-03-15 13:00:00 +01:00
Damir Jelić
cd152d97f1 travis: Add Windows to the CI. 2020-03-15 12:55:50 +01:00
Damir Jelić
78842d5c2c travis: cargo fmt doesn't require the feature flags. 2020-03-15 12:43:11 +01:00
Damir Jelić
b82b65ab09 travis: Add initial travis config. 2020-03-15 12:35:35 +01:00
Damir Jelić
2d8165c113 Cargo.toml: Fix the olm-rs dependency. 2020-03-14 12:22:36 +01:00
Damir Jelić
7f7c0657f9 Cargo.toml: Update the ruma deps. 2020-03-14 10:28:46 +01:00
Damir Jelić
fb6c6c89e8 crypto: Update to the ruma-event renames. 2020-03-13 16:58:59 +01:00
Damir Jelić
6438444275 base_client: Restore the olm machine if a session given at client creation. 2020-03-12 16:28:02 +01:00
Damir Jelić
545ebe8d9c crytpo: Get the one-time keys count out of the sync response as well. 2020-03-12 16:14:43 +01:00
Damir Jelić
8867b198f7 base_client: Forward the sync response to our olm machine. 2020-03-12 15:41:11 +01:00
Damir Jelić
2b389a8440 crypto: Mark the Account as Send. 2020-03-11 11:44:45 +01:00
Damir Jelić
e271b17766 async_client: Upload encryption keys in the sync_forever method. 2020-03-11 11:43:58 +01:00
Damir Jelić
33ee5cce61 async_client: Fix the user agent. 2020-03-11 11:43:31 +01:00
Damir Jelić
bc4416e7cd async_client: Add a method to upload encryption keys. 2020-03-11 11:42:59 +01:00
Damir Jelić
e7d6a5a834 base_client: Expose some olm machine methods. 2020-03-11 10:10:43 +01:00
Damir Jelić
e7b32ea155 crypto: Fix the one-time-key count updating. 2020-03-11 10:09:00 +01:00
Damir Jelić
f3816d04f2 base_client: Create a Olm machine after logging in. 2020-03-11 10:08:22 +01:00
Damir Jelić
22a9154bd3 crypto: Expose some sturcts to be used by the clients. 2020-03-11 10:06:33 +01:00
Damir Jelić
f15b7cccea crypto: Require a borrow of the user id when creating a new Olm machine. 2020-03-11 10:05:37 +01:00
Damir Jelić
740bc2a6c1 machine: Add a method to get the key tuple that need to be uploaded. 2020-03-10 14:06:30 +01:00
Damir Jelić
3e88839a68 crypto: Use ruma structs for the one-time keys as well. 2020-03-10 13:41:14 +01:00
Damir Jelić
003d514c14 crypto: Use ruma structs to represent the generated device keys. 2020-03-10 13:02:14 +01:00