Damir Jelić
bc8c2752e4
crypto: Store newly created Olm sessions immediately
...
This fixes a bug where we would try to create a new Olm session, even if
we already created one, because we didn't yet add the new one to the
store.
This would be triggered every time two or more Olm pre-key messages
arrive that don't yet have an Olm session. This leads to decryption
failures for every message that arrived in the same sync after the
first one which created the new Olm session.
2021-08-13 18:28:52 +02:00
Damir Jelić
d27a08bc91
crypto: Fix a comment in the attachment encryption logic
2021-08-13 18:28:52 +02:00
Damir Jelić
5192feb836
crypto: Add support to request secrets
2021-08-13 18:28:52 +02:00
Damir Jelić
a916288d03
crypto: Support responding to secret requests
2021-08-13 18:28:52 +02:00
Damir Jelić
96e26651bc
crypto: Bump the olm-rs version
2021-08-13 14:07:37 +02:00
Damir Jelić
725fd817c2
Merge branch 'ruma-0.3'
2021-08-12 15:22:21 +02:00
Damir Jelić
79dd53639b
Merge branch 'set-tag'
2021-08-12 15:06:26 +02:00
Jonas Platte
578ddd2698
Upgrade to ruma 0.3.0
2021-08-12 10:41:20 +02:00
Emelie
e175ab79c7
matrix-sdk: Add helpers for room tags
2021-08-09 17:01:48 +02:00
Johannes Becker
937d0aca79
appservice: Support appservice located on sub path
2021-08-09 14:35:26 +02:00
stoically
0bd438e617
Fix clippy warnings
2021-08-05 22:48:05 +02:00
Damir Jelić
1fd1570e07
Merge branch 'wip/haeckerfelix/room-event'
2021-07-29 09:37:31 +02:00
Felix Häcker
91e9a5f9f3
Add new RoomEvent type, try to decrypt event
2021-07-28 19:49:41 +02:00
Damir Jelić
aa5f532f86
Merge branch 'master' into room-state-getters
2021-07-27 11:18:29 +02:00
Damir Jelić
c499d2e465
matris-sdk: Test getting state events out of the store
2021-07-27 10:22:11 +02:00
Damir Jelić
3d734a120d
Merge branch 'hoist-deserialize-fix'
2021-07-26 16:16:08 +02:00
Damir Jelić
05eeba067c
base: Add docs to the newly public hoist and deserialize method
2021-07-26 15:58:18 +02:00
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
Felix Häcker
f3620e7072
room: Add event() method to retrieve a room event
2021-07-25 20:51:46 +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
Sorunome
27ad1f42da
use hoist_and_deserialize for state events
2021-07-04 08:42:59 +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