Commit Graph

639 Commits (1691a261635aeff797a8415478d0c6a21e922b6a)

Author SHA1 Message Date
Damir Jelić 1691a26163 crypto: Add initial Sas scaffolding. 2020-07-14 17:04:08 +02:00
Damir Jelić 51012e632e crypto: Rename the StoreError to StoreResult. 2020-07-14 13:11:44 +02:00
Damir Jelić 5d76fd9aac crypto: Refactor the key query handling logic a bit. 2020-07-14 13:08:57 +02:00
Damir Jelić c25f4c0642 crypto: Verify one-time keys using the device. 2020-07-14 12:49:40 +02:00
Damir Jelić 68125f5de6 crypto: Refactor out the json verification method. 2020-07-14 12:23:42 +02:00
Damir Jelić b602d3007d crypto: Remove some useless mem::replace calls. 2020-07-14 12:03:27 +02:00
Damir Jelić 41cfbaf520 device: Store the device keys with the algorithm and device id.
This will ensure that we can check the signature of the device later on.
2020-07-14 12:00:29 +02:00
Damir Jelić 8206394918 crypto: Use AlgorithmAndDeviceId to get the device signature. 2020-07-14 11:27:50 +02:00
Damir Jelić ca85564a9f crypto: Move the device keys verificatin logic into the device. 2020-07-14 11:17:09 +02:00
Damir Jelić a38efc0f29 room: Fix a clippy warning, use unwrap_or_else for the member counts. 2020-07-14 10:56:06 +02:00
Damir Jelić 18b444aac5 crypto: Move the uploaded key count handing into the account. 2020-07-13 16:46:51 +02:00
Damir Jelić a7a9ac24ed crypto: Move the key count field into the account. 2020-07-13 15:49:16 +02:00
Damir Jelić b2ccb61864 crypto: Add the device id and identity keys to the megolm session.
This way we don't need to pass in the account to encrypt events.
2020-07-13 14:32:59 +02:00
Damir Jelić ac264918b8 crypto: Move the megolm decryption logic into the session. 2020-07-13 14:00:42 +02:00
Damir Jelić 8e19c583c6 crypto: Move the megolm encryption logic into the outbound group session. 2020-07-13 13:19:25 +02:00
Damir Jelić 740a5af068 Merge branch 'dan/bugfix/implable-StateStore' 2020-07-13 10:19:37 +02:00
Dan Enman 8c3855221c mark state::AllRooms and state::ClientState as public 2020-07-11 19:14:55 -03:00
Damir Jelić c2f1e4de64 crypto: Disable a clippy warning. 2020-07-11 23:15:10 +02:00
Damir Jelić 8a7c53c00d matrix-sdk: Remove the wrongly committed olm-sys/olm-rs patch defintions. 2020-07-11 22:18:01 +02:00
Damir Jelić c1ae183795 Merge branch 'deps-and-stuff' 2020-07-11 22:13:35 +02:00
Jonas Platte eea00301ff
Remove immediately-deref'ed double references 2020-07-11 21:20:02 +02:00
Jonas Platte 85522ac35a
Slightly simplify RoomName::calculate_name 2020-07-11 21:14:32 +02:00
Jonas Platte 9b5f95672b
Use js_int macros to improve readability 2020-07-11 21:06:21 +02:00
Jonas Platte ffc5204109
Fix two pattern matching related warnings 2020-07-11 20:57:01 +02:00
Jonas Platte a607d70371
Upgrade mockito in matrix-sdk-base 2020-07-11 20:55:19 +02:00
Jonas Platte 1fcb68c59f
Remove unused dependencies 2020-07-11 20:55:05 +02:00
Damir Jelić 9bceb2f539 crypto: Add the user id and device id to the account. 2020-07-11 17:23:50 +02:00
Damir Jelić 7003ea2d23 matrix-sdk-common: Depend on a working revision of the ruma mono repo. 2020-07-11 16:24:36 +02:00
Damir Jelić 18ccd30c8c crypto: Add a bunch of TODO lines documenting how to refactor stuff further. 2020-07-11 12:05:52 +02:00
Damir Jelić eb19c19e36 Merge branch 'perf-1' 2020-07-11 10:33:30 +02:00
Damir Jelić df2bcf6f1f crypto: Style fix for a doc comment. 2020-07-11 09:45:52 +02:00
Jonas Platte 3ee06be87b
Rewrite MessageQueue deserialization to reduce allocations 2020-07-10 21:41:46 +02:00
Jonas Platte 3a07a17e9d
Remove unnecessary calls to clone() 2020-07-10 21:24:01 +02:00
Damir Jelić 27eeeb8db6 crypto: Move the one-time key signing into the accoung. 2020-07-10 17:53:04 +02:00
Damir Jelić 6ded76a5a7 crypto: Move the device_keys() method into the account. 2020-07-10 17:10:34 +02:00
Damir Jelić 58d79ca9c6 crypto: Put the user id and device id into the account. 2020-07-10 15:43:32 +02:00
Damir Jelić 4ee245dcce examples: Updat the autojoin example to use the ruma mono repo. 2020-07-10 15:30:17 +02:00
Devin R 62eeb3707f Fix wasm test failure gate unknown import 2020-07-10 08:59:02 -04:00
Devin R 3fa06eeb99 matrix-sdk-base: Add test for MessageQueue/JsonStore interaction
Ruma can't currently handle an event with the wrong event content type.
When replacing the MessageEventStub's content it automatically
serializes as "m.room.redaction".
2020-07-10 08:59:02 -04:00
Devin R c0e6279837 matrix-sdk: Update request_builder to use new constructors
The create_room::Request and get_message_events::Request now have
constructors that we use in our builder structs.
2020-07-10 08:59:02 -04:00
Devin R e7c70854ab sdk_base: message events in message queue have content redacted
The MessageQueue holds MessageEventStub<AnyMessageEventContent> so when
a redaction event is encountered the redacted event's content can be
replaced. The Unsigned field redacted_because is also populated with the
redaction event itself with the addition of a room_id Stub -> full
event.
2020-07-10 08:59:02 -04:00
Devin R dcc3d6e755 sdk_base: Remove room_id as argument from all Room methods
Remove room_id paramater from some client methods. Make CreationContent
two methods of RoomBuilder. Add docs for MessageWrapper.
2020-07-10 08:59:02 -04:00
Devin R 2338d3e8fd matrix-sdk-base: clean up recv/iter joined post rebase
The types for account data in a sync response have changed, no longer
Option. Re word comment in hoist prev_content test.
2020-07-10 08:59:02 -04:00
Devin R b83b9dc59d matrix-sdk-base: Use new accessor methods for models/message.rs
ruma now has field access methods for all of the Any*Event enums use
them for MessageWrapper's AnyMessageEventStub contents.
2020-07-10 08:59:02 -04:00
Devin R 68822861d5 Rebase upstream/master into ruma-mono branch 2020-07-10 08:59:02 -04:00
Devin R b1e7bc77a4 Use ruma/ruma master, address review issues 2020-07-10 08:59:02 -04:00
Devin R eb5949dbc2 Move matrix-sdk to ruma monorepo 2020-07-10 08:59:00 -04:00
Damir Jelić a3441429da matrix-sdk: Add an autojoin example. 2020-07-08 20:22:50 +02:00
Damir Jelić 9f957655d0 travis: Allow the wasm target to fail. 2020-07-07 17:40:00 +02:00
Damir Jelić 2663a17065 travis: Allow windows to fail for now. 2020-07-07 17:19:26 +02:00