Commit Graph

448 Commits (e32af74be51f5b7ba14b2133a8b6fcb4b065ca32)

Author SHA1 Message Date
Damir Jelić cf9ecbd0e8 crypto: Use an atomic int for the key count. 2020-04-28 15:47:49 +02:00
Damir Jelić 350578739c crypto: Make the user_id/device_id/identity_keys public methods. 2020-04-28 15:06:32 +02:00
Damir Jelić d220c6cb29 crypto: Test the megolm encyrption. 2020-04-28 14:48:49 +02:00
Damir Jelić 404f3a128d crypto: Test group session sharing. 2020-04-28 10:47:08 +02:00
Devin R 631ad261ae state_store: append user name to path when `store_room_state` is called 2020-04-27 16:55:40 -04:00
Devin R c91263eb13 Merge branch 'master' into state-store 2020-04-27 16:45:57 -04:00
Damir Jelić 4df6099125 crypto: Test the Olm encryption. 2020-04-27 18:27:33 +02:00
Damir Jelić b6c9358d14 crypto: Test the creation of an Olm session. 2020-04-27 16:31:28 +02:00
Damir Jelić 96144404ed crypto: Return a result when searching for missing sessions. 2020-04-27 16:26:03 +02:00
Devin R 8db05ace1e sync with state store after login to set path otherwise it makes 2x the folders 2020-04-27 08:10:43 -04:00
Devin R 199fb59a76 state_store: use tokio Mutex in state store tests 2020-04-27 07:23:59 -04:00
Devin R 6fcf0a86f9 Merge branch 'master' into state-store 2020-04-27 07:20:21 -04:00
Jonas Platte 6d67cd2ac7
Fix clippy lints 2020-04-27 12:12:51 +02:00
Jonas Platte 5cfac42101
Upgrade js_int to 0.1.5 2020-04-27 12:12:45 +02:00
Jonas Platte 4858ca5f74
Remove unnecessary clone 2020-04-27 11:52:49 +02:00
Devin R 55de913e08 state_store: use as many async fs functions as possible 2020-04-26 17:27:06 -04:00
Devin R bb2d531525 state_store: clean up and add examples to docs 2020-04-26 17:13:55 -04:00
Devin R 8f57f73b66 command_bot: use JsonStore in example 2020-04-25 06:26:35 -04:00
Devin R 0749e59af8 Merge branch 'master' into state-store 2020-04-24 20:02:36 -04:00
Devin R 23755b10ab state_store: add user_id localpart to state store path from session 2020-04-24 19:57:51 -04:00
Damir Jelić 4f3eaa6537 Merge branch 'tomb' 2020-04-24 12:59:44 +02:00
Devin R 316295bb77 state_store: add initial_use to let client know its safe to load state 2020-04-23 22:09:42 -04:00
Devin R 183fffe85e Merge branch 'master' of state-store 2020-04-23 21:53:13 -04:00
Devin R 030aa79750 state_store: add method to manually sync state store, `AsyncClient::sync` now initially syncs with state store 2020-04-23 19:37:27 -04:00
Devin R fd7d3db32b state_store: move path into JsonStore, store must be "connected" before adding to AsyncClientConfig 2020-04-23 16:40:23 -04:00
Devin R 8a8f590788 room: tests for calculate_room 2020-04-23 09:55:59 -04:00
Damir Jelić 6d12ed2046 async_client: Don't request a write lock for crypto based requests.
The crypto state machine is in the base client behind a separate lock so
there's no need to require write access.

This removes a deadlock if we're trying to send an encrypted message
from a event emitter callback, since emitting an event fetches a read
lock as well.
2020-04-23 14:56:59 +02:00
Devin R 07053cfe26 room/ev_emitter: add tombstone to emitted events 2020-04-23 07:05:59 -04:00
Devin R ef4d69b0ac room: fix broken calculate_name, used UInt::max needed min, heroes is always empty 2020-04-23 06:53:34 -04:00
Devin R 305633635d room: add tombstone event handling 2020-04-23 06:51:29 -04:00
Damir Jelić 986985464a rust-sdk: Remove some unused imports. 2020-04-23 12:43:59 +02:00
Damir Jelić a16d3b3d29 crypto: Don't instrument the debug implementation. 2020-04-23 11:58:21 +02:00
Damir Jelić cb235c47a1 machine: Remove a deadlock when decrypting Olm messages using an existing session. 2020-04-23 11:37:47 +02:00
Damir Jelić 1de791c207 rust-sdk: Update to the latest ruma releases. 2020-04-23 10:52:47 +02:00
Devin R 5491838228 state_store: fix docs, test client with default state store 2020-04-22 17:39:57 -04:00
Damir Jelić 4369d0b854 crypto: Return a EncryptedEventContent when encrypting using Olm instead of a specific one. 2020-04-22 15:38:42 +02:00
Damir Jelić b56b720c0c crypto: Return a EncryptedEventContent when encrypting instead of a specific one. 2020-04-22 15:22:43 +02:00
Damir Jelić 27ae8bccb9 crypto: Check the recipient and recipient keys for decrypted events. 2020-04-22 15:15:08 +02:00
Damir Jelić 0eab02a941 crypto: Remove a stale comment. 2020-04-22 13:43:45 +02:00
Damir Jelić 4576e93663 crypto: Add some more debug logs. 2020-04-22 12:54:49 +02:00
Damir Jelić cb6e43b340 crypto: Allow devices to be deleted from the crypto store. 2020-04-22 12:12:47 +02:00
Devin R ad7a18d50a state_store: remove associated Store type 2020-04-21 09:47:36 -04:00
Devin R 267453de4d state_store: add Path to StateStore methods, remove associated Error type 2020-04-21 09:36:59 -04:00
Devin R 1f173b4919 Merge branch 'master' into state-store 2020-04-21 08:29:25 -04:00
Damir Jelić 877b880ded crypto: Expose the devices publicly. 2020-04-21 11:03:28 +02:00
Damir Jelić 2f7ec887ba crypto: Clean up the imports. 2020-04-21 10:41:08 +02:00
Damir Jelić 6b33bedcbe Cargo.toml: Use the released version of olm-rs. 2020-04-21 09:54:41 +02:00
Damir Jelić 7b84f16bd3 crypto: Test key querying. 2020-04-21 09:45:46 +02:00
Damir Jelić c057d6c6ad crypto: Add a method to remove devices from our DeviceStore. 2020-04-21 09:45:20 +02:00
Damir Jelić 00f4dadbbb crypto: Clean up the key querying logic. 2020-04-21 09:44:44 +02:00