Commit graph

214 commits

Author SHA1 Message Date
Jonas Platte
4d5768111d
Simplify ruma identifier imports 2021-06-23 16:12:23 +02:00
Jonas Platte
aabda60e9f
Fix unused import warnings for wasm 2021-06-23 16:12:22 +02:00
Jonas Platte
43e213fd67 matrix-sdk: Update ruma
Co-authored-by: Damir Jelić <poljar@termina.org.uk>
2021-06-21 15:45:33 +02:00
Damir Jelić
baee5b2d11 crytpo: Couple more accessors for the verification request 2021-06-17 11:04:18 +02:00
Damir Jelić
34703bc0d6 crypto: Add a method to get all verification requests of a certain user 2021-06-17 11:04:18 +02:00
Damir Jelić
d212e7df18 crypto: Add some more accessors to the verification requests 2021-06-17 11:04:18 +02:00
Damir Jelić
f8b09d4537 crypto: Remember who started the verification request 2021-06-17 11:04:18 +02:00
Damir Jelić
5d38bc3802 crypto: Scope the verification requests behind the other user id 2021-06-17 11:04:18 +02:00
Damir Jelić
58d3b42a60 crypto: Don't allow QR code generation if we or the other can't handle it 2021-06-17 11:04:18 +02:00
Damir Jelić
b7986a5153 crypto: Add a couple more accessors for the verification request 2021-06-17 11:04:18 +02:00
Damir Jelić
c547f384bc crypto: Fix the method to transition from a request into a SAS verification 2021-06-17 11:04:18 +02:00
Damir Jelić
29bba0b2ca crypto: Allow accepting key request while specifying our supported methods 2021-06-17 11:04:18 +02:00
Damir Jelić
80fac4bfa4 cyrpto: Go into passive mode if someone else replies to a request 2021-06-17 11:04:18 +02:00
Damir Jelić
be53913a16 crypto: Remove the redundant flow id copy 2021-06-17 11:04:18 +02:00
Damir Jelić
df1fe0ebc4 crypto: Don't return a result when receiving a ready event
Ready events might be invalid but we might receive a valid one later on,
e.g. someone is trying to disrupt our verification, so just ignore
invalid ready events.
2021-06-17 11:04:18 +02:00
Damir Jelić
073b91fa62 crypto: Ignore verification requests that are sent by us 2021-06-17 11:04:18 +02:00
Damir Jelić
cc0388929a crypto: Add some more accessors for the fields in the verification types 2021-06-17 11:04:17 +02:00
Damir Jelić
b14d754aed crypto: Turn the content_to_request function into a constructor
Closes: #260
2021-06-17 11:04:17 +02:00
Damir Jelić
00c3921d2a crypto: Add initial support for QR code verification 2021-06-17 11:04:17 +02:00
Damir Jelić
71aba433da crypto: Add some more accessors to the sas structs 2021-06-17 11:04:17 +02:00
Damir Jelić
7f364fd615 crypto: Allow only a identity to be verified when the verification finishes
QR code based verification doesn't verify a device when users are
verifying each other, generalize the logic that marks stuff as verified
so we can verify either only a device or an user identity or both.
2021-06-17 11:04:17 +02:00
Damir Jelić
ada71586ac crypto: Scope the verifications per sender 2021-06-17 11:04:17 +02:00
Damir Jelić
533a5b92b0 crypto: Ignore key verification requests that have an invalid timestamp 2021-06-17 11:04:17 +02:00
Damir Jelić
5fa2b05622 matrix-sdk: Fix some more typos 2021-06-08 11:13:23 +02:00
Jonas Platte
74d0ac7c77
crypto: Depend on ruma directly
… instead of using matrix_sdk_common's re-exports
2021-06-07 18:55:56 +02:00
Jonas Platte
3bac536daf
Fix clippy lints
Automated via `cargo clippy --workspace --all-targets -Zunstable-options --fix`.
2021-06-07 15:51:18 +02:00
Damir Jelić
6f11244017 Merge branch 'typos' 2021-06-06 21:01:30 +02:00
Jonas Platte
6b685b671d
Replace Arc<Box<dyn (Crypto|State)Store>> by Arc<dyn (Crypto|State)Store> 2021-06-06 18:16:25 +02:00
Jonathan de Jong
74a6d39b9f various typos 2021-06-05 14:35:20 +02:00
Damir Jelić
0df782e93e crypto: Fix some clippy warnings 2021-06-04 19:26:32 +02:00
Damir Jelić
96d4566111 crypto: Move the verification cache into a separate module 2021-06-04 18:13:52 +02:00
Damir Jelić
31e00eb434 crypto: Don't panic if we get a unknown cancel code 2021-06-04 18:13:52 +02:00
Damir Jelić
612fa46359 crypto: Replace a bunch of From implementations with macros 2021-06-04 18:13:52 +02:00
Damir Jelić
0a7fb2cbc3 crytpo: Mark verification requests as cancelled and as done 2021-06-04 18:13:52 +02:00
Damir Jelić
f9fb530480 crypto: Forward cancel events to the sas object 2021-06-04 18:13:52 +02:00
Damir Jelić
2ec8893273 crypto: Silence a clippy warning until we add QR code verifications 2021-06-04 15:39:56 +02:00
Damir Jelić
bd5dda370d crypto: Remove the sas event enums module 2021-06-04 15:16:38 +02:00
Damir Jelić
ac04b0c36e crypto: Create a enum for the verification types 2021-06-04 15:16:38 +02:00
Damir Jelić
a04afac963 crypto: Fix a clippy warning 2021-06-04 15:16:38 +02:00
Damir Jelić
cf98681f19 crypto: Remove some duplicate code 2021-06-04 15:16:38 +02:00
Damir Jelić
cbcf673d21 crypto: Make sure we send verification done events 2021-06-04 15:16:38 +02:00
Damir Jelić
9b20b00908 crypto: Log if we get a missmatch of the flow id 2021-06-04 15:16:38 +02:00
Damir Jelić
f50d0cd3a6 crypto: Test starting a to-device verification request 2021-06-04 15:16:38 +02:00
Damir Jelić
1e48b15040 crypto: Add enums so we can handle in-room and to-device verifications the same 2021-06-04 15:16:38 +02:00
Damir Jelić
b52f3fb11f crypto: Remove an allocation when calculating the SAS MAC 2021-06-04 15:16:38 +02:00
Damir Jelić
d877c1cf8c crypto: Move the Done state into the common verification module 2021-06-04 15:16:38 +02:00
Damir Jelić
327445c6a0 crypto: Move the logic for marking identities as verified out of the Sas struct 2021-06-04 15:16:38 +02:00
Damir Jelić
8a5a0e511e crypto: Don't await while holding a sync lock 2021-06-04 15:16:38 +02:00
Damir Jelić
12619ab8b3 crypto: Log a warning if we get a start event without being ready 2021-06-04 15:16:38 +02:00
Damir Jelić
069ef3a661 crypto: Move the SAS starting logic into the verification request struct 2021-06-04 15:16:38 +02:00