Commit graph

1930 commits

Author SHA1 Message Date
Damir Jelić
778867e3ef crypto: Test that edits get properly decrypted 2021-07-26 15:28:17 +02:00
Damir Jelić
4432be48e0 crypto: Fix a broken doc link 2021-07-26 11:47:53 +02:00
Damir Jelić
46f9c292ab crypto: Streamline how we update one-time key counts
There is no reason to use different logic when updating one-time key
counts coming from an upload response vs when coming from a sync
response.

Switch to an AtomicU64 for the count as well, the i64 is probably a
remnant of the SQLite based crypto store.
2021-07-22 16:06:10 +02:00
Damir Jelić
e919a82b2c Merge branch 'verification-improvements' 2021-07-19 14:31:31 +02:00
Damir Jelić
3a8ff2f6b4 matrix-sdk: Allow the key import error to be dead under WASM 2021-07-19 11:19:14 +02:00
Damir Jelić
26310def0a crypto: Silence a couple of clippy warnings 2021-07-19 10:49:22 +02:00
Damir Jelić
24377a45ff matrix-sdk: Add methods to request verification for devices 2021-07-19 10:34:34 +02:00
Damir Jelić
5566886f20 crypto: Add public methods to request verifications with devices 2021-07-19 10:26:39 +02:00
Damir Jelić
8f03679935 matrix-sdk: Add more getters to the high level verification structs 2021-07-19 09:59:08 +02:00
Damir Jelić
0053d2a874 crypto: Don't send cancellations for passive verification requests 2021-07-19 09:48:22 +02:00
Damir Jelić
55a9e6836d crypto: Introduce a CancelInfo struct
This replaces the separate methods to fetch info about the cancellation.
It was a bit annoying to gather all the different info where each method
can return None.
2021-07-19 09:45:47 +02:00
Damir Jelić
cf30c42563 crypto: Correctly remember our chosen SAS methods 2021-07-19 09:43:35 +02:00
Damir Jelić
ff8089912e crypto: Only send cancellations to other devices if we're the requester 2021-07-19 09:36:21 +02:00
Damir Jelić
909cd42ac1 crypto: Cancel the verification request for to-device Sas verifications 2021-07-19 09:32:48 +02:00
Damir Jelić
7433003ffa matrix-sdk: Don't panic when importing invalid key exports 2021-07-19 09:21:28 +02:00
Damir Jelić
ead91a1e6b crypto: Send cancellations if the other device picks up over to-device 2021-07-12 18:12:02 +02:00
Damir Jelić
b53518d1b8 crypto: Improve a log line 2021-07-09 17:13:15 +02:00
Damir Jelić
71c89c2670 crypto: Time out verification requests as well 2021-07-09 17:01:35 +02:00
Damir Jelić
cca73b2622 crypto: Update the SAS event timeout when we receive events 2021-07-09 16:13:30 +02:00
Damir Jelić
7644ceea8a crypto: Make sure we don't deadlock when we cancel the verification request 2021-07-09 14:31:54 +02:00
Damir Jelić
b0e8f12426 crypto: Cancel the verification request if the child flow gets cancelled 2021-07-09 13:53:47 +02:00
Damir Jelić
4e5cc03673 crypto: Only go into a done verification request if we're in the correct state 2021-07-09 11:50:12 +02:00
Damir Jelić
76d57baa11 crypto: Add the verification to the cache after we scan a QR code 2021-07-09 11:49:46 +02:00
Damir Jelić
5c9840daf8 crypto: Return a request when we start QR code verification instead of the content 2021-07-09 11:39:25 +02:00
Damir Jelić
ae37e6ec9d crypto: Add a state getter where we scanned the QR code 2021-07-09 11:38:10 +02:00
Damir Jelić
c5df7c5356 crypto: Add methods to request verification from users 2021-07-08 12:30:30 +02:00
Jonas Platte
69225ad00b
Use rustdoc-map to link to external crates in master docs 2021-07-02 18:05:34 +02:00
Damir Jelić
db0843a47a crypto: Don't panic if we don't have the keys to generate a QR code 2021-07-01 10:27:45 +02:00
Damir Jelić
9052843acb crypto: Add another SAS state so we know when both parties accepted 2021-06-29 12:56:28 +02:00
Damir Jelić
113587247e crypto: Notify our users that a verification timed out on our end 2021-06-29 12:56:28 +02:00
Damir Jelić
ee6b804804 crypto: Allow QR code verifications to get into the cancelled state as well. 2021-06-29 12:56:28 +02:00
Damir Jelić
63659c9604 crypto: Fix verification requests getting cancelled 2021-06-29 12:56:28 +02:00
Damir Jelić
100a936f1b crypto: Add a method to check if the scanning has been confirmed 2021-06-29 12:56:28 +02:00
Damir Jelić
80a30bcdd6 crypto: Add all the common accessors to the qr code verification 2021-06-29 12:56:28 +02:00
Damir Jelić
728d298810 crypto: Add a getter for the room id for the SAS verifications 2021-06-29 12:56:28 +02:00
Damir Jelić
af084528c8 crypto: Remember who cancelled the verification
This seems to be of limited use considering that people can just see the
sender of the cancellation event or they perform the cancellation
themselves using the cancel() method but EA seems to want this.
2021-06-29 12:56:28 +02:00
Damir Jelić
d4e80883dc crypto: Propagate the we_started info to the SAS verification 2021-06-29 12:56:28 +02:00
Damir Jelić
55690ddd54 crypto: Allow canceling a SAS verification with a specific cancel code 2021-06-29 12:56:28 +02:00
Damir Jelić
9a685d685c crypto: Add a couple more getters for the SAS verification 2021-06-29 12:56:28 +02:00
Damir Jelić
c78406ceb9 crypto: Clean up the method to check if a device is verified. 2021-06-29 12:56:28 +02:00
Johannes Becker
f454d407af appservice: Drop actix 2021-06-29 12:16:48 +02:00
Jonas Platte
df71de5af2
crypto: Store key::verification::start::SasV1Content
… instead of SasV1ContentInit
2021-06-25 12:04:20 +02:00
Jonas Platte
52fd551890
appservice: Reexport ruma entirely 2021-06-23 16:12:23 +02:00
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
089ab20e7c
Re-format wasm_command_bot 2021-06-23 16:12:22 +02:00
Jonas Platte
6e29251886
Remove matrix_sdk_base::Error re-export
It's not part of the public API.
2021-06-23 16:12:22 +02:00
Jonas Platte
4a7010bab1
Reexport independent external crates entirely
… instead of reexporting individual items.
2021-06-23 16:12:22 +02:00
Jonas Platte
b181125e6f
Remove nesting of matrix_sdk_base::Error in matrix_sdk::Error
There is no useful distinction between the same error variants on
matrix_sdk::Error directly vs matrix_sdk::MatrixError.
2021-06-23 12:50:37 +02:00
Jonas Platte
c4e4830f32
Add missing doc(cfg) attrs 2021-06-23 11:52:19 +02:00