Damir Jelić
6bb9a7a7d7
docs(crypto): Improve some docs about the forwarded curve chains
...
Co-authored-by: Denis Kasak <dkasak@termina.org.uk >
2022-08-30 17:14:29 +02:00
Damir Jelić
75fb3b81a7
fix(crypto): Fix the deserialization of exported inbound group sessions
2022-08-30 17:14:29 +02:00
Damir Jelić
504ad39c27
fix(crypto): Fix the deserialization of inbound group group_sessions
...
Inbound group sessions would fail to be deserialized if there was a
forwarding curve chain, this patch fixes it so we go through base64 when
we deserialize this field.
2022-08-30 17:14:29 +02:00
Benjamin Kampmann
d20db7c7c1
Merge pull request #981 from Hywan/fix-crypto-js-npm-publish
...
chore(crypto-js): Add `npm run pack`
2022-08-30 08:50:39 +02:00
Ivan Enderlin
1bfcc52a1f
chore(crypto-js): Add npm run pack.
...
This patch introduces a new `pack` NPM script, which runs `wasm-pack
pack` behind the scene.
This patch modifies the `publish` NPM script to run the `pack` script
as a pre-script (so… in the `prepublish` script).
Finally, this patch no longer uses `$npm_execpath` as it doesn't work
on Windows. It should be `%npm_execpath%`. It's not obvious to make
scripts interoperable, so we will stick with `npm` for now.
2022-08-29 14:22:39 +02:00
Damir Jelić
a8362e389e
Document the receive_supported_keys method in the gossiping module
2022-08-29 10:21:04 +02:00
Damir Jelić
fe35e7c9fa
ci: Test the experimental-algorithms feature of the crypto crate
2022-08-29 10:21:04 +02:00
Damir Jelić
5768188da8
Fix some clippy warnings
2022-08-29 10:21:04 +02:00
Damir Jelić
1e451a92e0
Add some missing docs to the Olm Session
2022-08-29 10:21:04 +02:00
Damir Jelić
12c1b80bc9
Remove a dead code allowed attribute
2022-08-29 10:21:04 +02:00
Damir Jelić
7fda431d5f
Remove the usage of the Ruma EventEncryptionAlgorithm
2022-08-29 10:21:04 +02:00
Damir Jelić
337fbb591d
Put the new megolm algorithm behind the experimental feature flag
2022-08-29 10:21:04 +02:00
Damir Jelić
8cca01369a
Put the new olm algorithm behind a feature flag
2022-08-29 10:21:04 +02:00
Damir Jelić
8cdc609876
Move the EventEncryptionAlgorithm into a more logical place
2022-08-29 10:21:04 +02:00
Damir Jelić
0673ad315f
Add support for megolm.v2 forwarded keys
2022-08-29 10:21:04 +02:00
Damir Jelić
3aaf70cb5a
Support the new algorithms in the gossiping tests
2022-08-29 10:21:04 +02:00
Damir Jelić
b00e963a21
Add support for the new algorithms in the bindings
2022-08-29 10:21:04 +02:00
Damir Jelić
7d98d87c5a
Enable the new olm/megolm algorithms
2022-08-29 10:21:04 +02:00
Damir Jelić
fb840f73a3
Add support for the m.megolm.v2.aes-sha2 room key content
2022-08-29 10:21:04 +02:00
Damir Jelić
e935f59039
Add support for the m.megolm.v2.aes-sha2 algorithm
2022-08-29 10:21:04 +02:00
Damir Jelić
3df6797419
Add support for the m.olm.v1.curve25519-aes-sha2 algorithm
2022-08-29 10:21:04 +02:00
Damir Jelić
eaf1f27831
refactor(crypto): Use our own enum for the encryption algorithms
2022-08-29 10:21:04 +02:00
Damir Jelić
748eff40f0
docs(crypto): Improve some docs around event trust states
...
Co-authored-by: Denis Kasak <dkasak@termina.org.uk >
2022-08-29 09:50:38 +02:00
Damir Jelić
0084117de9
docs(crypto): Fix some spelling and improve a couple of docs
...
Co-authored-by: Ivan Enderlin <ivan@mnt.io >
2022-08-29 09:50:38 +02:00
Damir Jelić
a4af5bf4e1
fix(crypto): Improve the code checking if a decrypted event is trusted
...
This now takes into account if the room key was imported, i.e. received
as a forward. We also do the check of the Ed25519 key now.
2022-08-29 09:50:38 +02:00
Damir Jelić
27d4228269
fix(crypto): Check the Ed25519 key when we receive an Olm encrypted event
2022-08-29 09:50:38 +02:00
Kévin Commaille
dc39c8d96b
fix(examples): Fix examples that accept invites
...
Spawn a task for accepting the invite otherwise the call never returns and sync stops.
2022-08-26 18:15:56 +02:00
Jonas Platte
d427632230
chore: Add more backticks in comments
2022-08-25 18:09:13 +02:00
Jonas Platte
6ddc8ba36f
refactor!: Rename [Sync]RoomEvent to [Sync]TimelineEvent
2022-08-25 18:09:13 +02:00
Jonas Platte
4be2f3aa04
chore: Upgrade ruma
2022-08-25 18:09:13 +02:00
Jonas Platte
f6c404cb32
feat(sdk): Allow event enums to be used as the first event handler argument
2022-08-25 17:19:44 +02:00
Jonas Platte
20a6a16152
refactor(sdk): Split EventHandlerMap into separate maps
...
One for room-specific event handlers, one for non-room-specific ones.
2022-08-25 17:19:44 +02:00
Jonas Platte
5a1853b0d5
refactor(sdk): Split event_handler module into more files
2022-08-25 17:19:44 +02:00
Jonas Platte
9183f5d4ef
refactor(sdk): Move event handler fields from Client into a new struct
2022-08-25 17:19:44 +02:00
Ivan Enderlin
973833c643
feat(crypto-js): Add store configuration to the OlmMachine constructor
...
feat(crypto-js): Add store configuration to the `OlmMachine` constructor
2022-08-25 11:37:45 +02:00
Ivan Enderlin
ce4f7e2254
Merge branch 'main' into feat-crypto-js-store
2022-08-25 11:22:22 +02:00
Jonas Platte
0018749e15
feat(sdk): Allow Raw<_> to be used as the first event handler argument
2022-08-24 18:35:09 +02:00
Ivan Enderlin
9c414bbe9f
feat(crypto-js): Implement OlmMachine.sign and .cross_signing_status
...
feat(crypto-js): Implement `OlmMachine.sign` and `.cross_signing_status`
2022-08-24 09:48:03 +02:00
Jonas Platte
0b8462423a
chore: Reduce indirect dependencies of examples
2022-08-23 18:30:44 +02:00
Jonas Platte
2313c099fa
chore(bindings): Replace parking_lot RwLock by std RwLock
2022-08-23 18:30:44 +02:00
Ivan Enderlin
85795a92b6
chore(crypto-js): Make Clippy happy.
2022-08-23 17:38:32 +02:00
Ivan Enderlin
ef8207fbaa
chore(crypto-js): Make Clippy happy.
2022-08-23 17:06:07 +02:00
Jonas Platte
f83292fc75
refactor: Start using UniFFI proc-macro frontend
2022-08-23 16:47:08 +02:00
Jonas Platte
5faed2e635
Upgrade UniFFI
2022-08-23 16:47:08 +02:00
Ivan Enderlin
9722a4c415
chore(crypto-js): Use IndexeddbCryptoStore only for wasm32.
2022-08-23 16:46:09 +02:00
Ivan Enderlin
432449b009
chore(crypto-js): Make cargo fmt happy.
2022-08-23 15:08:51 +02:00
Ivan Enderlin
04634d5f39
chore(crypto-js): Fix a typo in an error message.
2022-08-23 15:04:50 +02:00
Ivan Enderlin
ef56f76978
doc(crypto-js): Fix a typo.
2022-08-23 15:03:26 +02:00
Ivan Enderlin
527c727e4a
test(crypto-js): Improve test cases.
2022-08-23 15:00:39 +02:00
Ivan Enderlin
d947448c64
test(crypto-js): Add more test case when store is not configured correctly.
2022-08-23 15:00:39 +02:00