Damir Jelić
85fde6796a
fix(sdk): Remove the custom storage methods from the Client
2021-09-09 11:54:08 +02:00
Damir Jelić
db1efcd1fc
feat(sdk): Expose the cross signing user identities
...
This patch adds support to fetch cross signing user identities from the
crypto store, those can now be used to request verifications and inspect
the master keys of users.
2021-09-09 10:40:36 +02:00
Damir Jelić
f80e4b3f06
feat(sdk): Add a way to wait for a sync to be done
2021-09-09 10:31:35 +02:00
Damir Jelić
5049e8bfbe
docs(sdk): Linkify some verification struct docs
2021-09-09 10:31:35 +02:00
Damir Jelić
6e4a57046e
fix(sdk): Use a pure HTTP error for methods that don't touch local state
2021-09-09 10:30:46 +02:00
Damir Jelić
afc8597d3b
fixup! feat(sdk): Expose the list of tracked users publicly
2021-09-09 10:27:59 +02:00
Damir Jelić
5ff69ad1a9
fix(base): Mark rooms as DMs when we receive an m.direct event
2021-09-09 10:21:05 +02:00
Damir Jelić
05663a42ed
feat(sdk): Add a method to check the status of our private cross signing keys
2021-09-09 10:21:05 +02:00
Damir Jelić
7c2b6ede1f
feat(crypto): Expose the master pubkey struct publicly
2021-09-09 10:21:05 +02:00
Damir Jelić
c6100404e5
feat(sdk): Expose the list of tracked users publicly
2021-09-09 10:20:50 +02:00
Alexander Sieg
df65081785
run nightly rustfmt
2021-09-09 10:15:14 +02:00
Damir Jelić
1bcc74738e
feat(sdk): Add a method to check if a room contains only verified devices
2021-09-09 10:13:00 +02:00
Damir Jelić
0e9a1b42ec
Merge branch 'new-event-handler'
2021-09-09 10:07:02 +02:00
Jonas Platte
c3081de611
Add async context to register_event_handler doctest
2021-09-09 00:49:04 +02:00
Jonas Platte
97731d1240
Add a test for register_event_handler
2021-09-08 23:34:05 +02:00
Jonas Platte
e2432d476e
Add Client::register_notification_handler
...
It had been planned but forgotten.
2021-09-08 23:34:05 +02:00
Jonas Platte
6e571c579d
Allow chaining .register_event_handler()
2021-09-08 23:34:05 +02:00
Jonas Platte
8c499a63dc
Add missing `.await`s in event handler doctests
2021-09-08 23:34:01 +02:00
Jonas Platte
ce0cb273bb
Use matrix_sdk_common::executor::spawn instead of tokio::spawn
2021-09-08 21:08:23 +02:00
Jonas Platte
971cdf37f6
Fix doctest imports
2021-09-08 20:45:40 +02:00
Jonas Platte
699039f788
Better document event context argument restrictions
2021-09-08 20:40:26 +02:00
Jonas Platte
c3e25bda1a
Run event / notification handlers in separate async tasks
...
Prevents deadlocks when new handlers are registered from within an
existing handler.
2021-09-08 20:32:06 +02:00
Jonas Platte
606a57203e
Add some documentation about how the event handler abstraction works
2021-09-08 20:29:09 +02:00
Jonas Platte
3c38b26770
Rewrap doc comments
2021-09-08 20:19:07 +02:00
Jonas Platte
67912f3768
Fix / improve event handler documentation
2021-09-08 19:23:19 +02:00
Jonas Platte
bf8945430f
Fix Copyright header
2021-09-08 19:23:03 +02:00
Jonas Platte
cb33f26d5c
Log room retrieval failure in Client::process_sync
2021-09-08 19:22:54 +02:00
Jonas Platte
ddea1bdb9e
Rewrap crate feature flag docs
2021-09-08 19:12:58 +02:00
Alexander Sieg
9b90175500
matrix_sdk: add `encryption` to `qrcode` feature
2021-09-08 17:46:26 +02:00
Alexander Sieg
44f6e7a0cf
matrix_sdk: remove compile_error for qrcode feature
2021-09-08 17:31:06 +02:00
Alexander Sieg
55692802c0
crypto: feature-gate dependency on matrix_qrcode
2021-09-08 17:23:10 +02:00
Amanda Graven
5be7bb980d
Add custom storage
...
Add an additional tree to the Store where custom api consumer data may
be stored.
2021-08-25 11:39:43 +02:00
Johannes Becker
33c49c5cd8
appservice: Re-export sdk features
2021-08-17 20:17:17 +02:00
Jonas Platte
d348e77468
Remove extraneous space
2021-08-17 00:32:24 +02:00
Jonas Platte
a5ff4fbef7
Simplify struct initializations by using Default::default
2021-08-17 00:32:23 +02:00
Jonas Platte
cfa69e74f4
Delete unused file
2021-08-17 00:26:02 +02:00
Jonas Platte
36ceb66ba5
Remove prev_content compat hacks
...
This is now handled by Ruma.
2021-08-17 00:26:01 +02:00
Jonas Platte
2fdad12521
Rewrite event handler abstraction
2021-08-17 00:26:01 +02:00
Damir Jelić
623408913c
Merge branch 'secret-sharing'
2021-08-13 20:38:31 +02:00
Damir Jelić
9bae87b0ac
crypto: Fix some clippy warnings
2021-08-13 18:28:52 +02:00
Damir Jelić
00e11d33f1
crypto: Fix user-signing signature uploads
2021-08-13 18:28:52 +02:00
Damir Jelić
680f77beb9
crypto: Add the master key to the SAS MAC if we trust it
2021-08-13 18:28:52 +02:00
Damir Jelić
356506060c
crypto: Remove private cross signing keys if we detect that they changed
2021-08-13 18:28:52 +02:00
Damir Jelić
4e9fe79619
crypto: Start remembering if an inbound group session has been backed up
2021-08-13 18:28:52 +02:00
Damir Jelić
e4a9cf0bba
crypto: Disallow re-sharing room keys with devices with changed curve keys
2021-08-13 18:28:52 +02:00
Damir Jelić
f9de77a75d
crypto: Make sure we request secrets only if the user became trusted
2021-08-13 18:28:52 +02:00
Damir Jelić
315e77ebf2
crypto: Add the users for key claiming to the outgoing requests
...
This makes sure that we immediately claim one-time keys after we
receive the sync changes instead of waiting for a room message to be
sent by the user.
Users may not send a message in a long time which would mean that we'll
likely never share secrets or forward room keys if a Olm session was
missing with the requester.
2021-08-13 18:28:52 +02:00
Damir Jelić
da82fbab4f
crypto: Connect the responding to secret request logic
2021-08-13 18:28:52 +02:00
Damir Jelić
4f46212d1a
crypto: Add a method to manually verify our own user identity
2021-08-13 18:28:52 +02:00
Damir Jelić
d4fe6f5133
crypto: Add methods to manually verify devices and users
2021-08-13 18:28:52 +02:00