David Baker
8b649cec8d
All the copyrights
2018-01-18 11:52:27 +00:00
David Baker
27d28b8247
More test fixing
...
Allow localstorage store to take a localstorage impl, make TestClient
pass a cryptostore & fix True/true typo
2018-01-15 16:27:28 +00:00
David Baker
110f43a246
Make DeviceList test pass
...
Includes making saveIfDirty() return a promise in case you care
about when changes got saved (which the test does).
2018-01-15 15:21:39 +00:00
David Baker
e6dd573e8a
Fix test (needs a cryptostore now)
2017-12-06 19:42:01 +00:00
Hubert Chathi
8f252992e4
keep track of event ID and timestamp of decrypted messages
...
This is to avoid false positives when detecting replay attacks.
fixes : vector-im/riot-web#3712
Signed-off-by: Hubert Chathi <hubert@uhoreg.ca >
2017-10-11 23:27:36 -04:00
Richard van der Hoff
f00558d840
Merge remote-tracking branch 'origin/develop' into rav/async_crypto/1
2017-08-15 18:31:02 +01:00
Richard van der Hoff
8a0f73bf81
Make some OlmDevice megolm methods async
...
* OlmDevice.hasInboundSessionKeys
* OlmDevice.getInboundGroupSessionKey
The latter means that MegolmDecryption.shareKeysWithDevice takes longer before
it sends out the keyshare, so means the unit test needed an update
2017-08-10 15:01:56 +01:00
Richard van der Hoff
6613ee6b0d
Make crypto.decryptMessage return decryption results
...
... instead of having it call event.setClearData.
The main advantage of this is that it fixes a race condition, wherein apps
could see `event.isDecrypting()` to be true, but in fact the event had been
decrypted (and there was no `Event.decrypted` event on its way).
We're also fixing another race, wherein if the first attempt to decrypt failed,
a call to `attemptDecryption` would race against the first call and a second
attempt to decrypt would never happen.
This also gives a cleaner interface to MatrixEvent, at the expense of making
the `megolm` unit test a bit more hoop-jumpy.
2017-08-10 13:05:35 +01:00
Richard van der Hoff
906bf88450
Merge remote-tracking branch 'origin/develop' into rav/async_crypto/olmlib
2017-08-09 18:11:48 +01:00
Richard van der Hoff
aff32afefa
Make olmlib.encryptMessageForDevice async
2017-08-09 10:46:18 +01:00
Richard van der Hoff
18f75ec61c
make algorithm.hasKeysForKeyRequest async
2017-08-08 18:26:31 +01:00
Richard van der Hoff
8bbf14acbf
Let event decryption be asynchronous
...
Once everything moves to indexeddb, it's going to require callbacks and the
like, so let's make the decrypt API asynchronous in preparation.
2017-07-21 14:41:22 +01:00
Richard van der Hoff
8b2fdf3a75
Deflake megolm unit test
...
Waiting for 1ms isn't actually good enough. wait for the actual thing we are
actually waiting for.
2017-07-14 15:22:08 +01:00
Richard van der Hoff
cfffbc4a09
replace q method calls with bluebird ones
...
```
find src spec -name '*.js' |
xargs perl -i -pe 's/q\.(all|defer|reject|delay|try)\(/Promise.$1(/'
```
2017-07-12 23:33:55 +01:00
Richard van der Hoff
a5d3dd942e
q(...) -> Promise.resolve
...
```
find src spec -name '*.js' |
xargs perl -i -pe 's/\bq(\([^(]*\))/Promise.resolve$1/'
```
2017-07-12 23:32:28 +01:00
Richard van der Hoff
b96062b6de
replace imports of q with bluebird
...
```
find src spec -name '*.js' |
xargs perl -i -pe 'if (/require\(.q.\)/) { $_ = "import Promise from '\''bluebird'\'';\n"; }'
find src spec -name '*.js' |
xargs perl -i -pe 'if (/import q/) { $_ = "import Promise from '\''bluebird'\'';\n"; }'
```
2017-07-12 23:32:28 +01:00
Richard van der Hoff
1f86dbd12f
Add support for forwarding room keys to megolm
...
when we receive a m.forwarded_room_key, add it to the crypto store, but
remember who forwarded it to us, so we can decide whether to trust them
separately.
2017-06-20 12:39:36 +01:00
Richard van der Hoff
be3fb0f917
Make a start on a unit test for megolm alg impl
...
not much here yet, but it's a start at least.
2017-06-20 11:51:30 +01:00
Richard van der Hoff
655be2fa2e
Fix race in device list updates
...
Don't consider device lists up-to-date when we have another request for the
relevant user in the queue.
Fixes https://github.com/vector-im/riot-web/issues/3796 .
2017-05-05 12:34:00 +01:00