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ć
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
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
Jonas Platte
df71de5af2
crypto: Store key::verification::start::SasV1Content
...
… instead of SasV1ContentInit
2021-06-25 12:04:20 +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
Damir Jelić
b95ebe444e
matrix-sdk: Bump our versions
2021-06-22 14:57:46 +02:00
Damir Jelić
57b2f6ad22
matrix-sdk: Switch to a release of ruma
2021-06-21 19:53:26 +02:00
Damir Jelić
513fbd8900
crypto: Manually implement Debug for attachment encryptors/decryptors
2021-06-21 17:29:46 +02:00
Damir Jelić
17097f4d42
matrix-sdk: Upgrade our deps
2021-06-21 16:45:52 +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