Bruno Windels
74a4dfeb67
remove support for asym 4s enc
2020-05-12 14:29:54 +02:00
David Baker
cb7e1a9d82
Merge pull request #1367 from matrix-org/dbkr/increase_olm_second_phase_timeout
...
Increase timeout for 2nd phase of Olm session creation
2020-05-01 18:32:25 +01:00
David Baker
3c9dfc195e
Increase timeout for 2nd phase of Olm session creation
...
The timeouts on the two phases of olm session creation are 2 and 10
seconds respectively, so sessions will fail if servers take more
than 10s to respond. Now that we have two phases, we can afford to
wait longer on the second one because the user's isn't waiting for
it to finish before the message will send, so increase it to 30s
so servers have more of a chance to respond.
2020-05-01 18:25:25 +01:00
David Baker
d699e98346
Add logging on decryption retries
...
For https://github.com/vector-im/riot-web/issues/13473
2020-05-01 17:36:49 +01:00
David Baker
4946b55c21
lint
2020-05-01 15:13:02 +01:00
David Baker
ad7d7154f4
Emit event when a trusted self-key is stored
...
This will cause our own user trust status to change, so emit an
event to say so.
2020-05-01 15:01:13 +01:00
Zoe
e5b6a9f8cb
Merge pull request #1352 from matrix-org/foldleft/12252-large-err
...
Customize error payload for oversized messages
2020-05-01 09:44:43 +01:00
Zoe
04f27d36ef
Update src/crypto/OlmDevice.js
...
Co-authored-by: Travis Ralston <travpc@gmail.com >
2020-05-01 09:40:11 +01:00
J. Ryan Stinnett
683fc98fdc
Merge pull request #1363 from matrix-org/jryans/key-backup-network-fail
...
Return null for key backup state when we haven't checked yet
2020-04-30 17:21:09 +01:00
J. Ryan Stinnett
c303e83444
Return null for key backup state when we haven't checked yet
...
This allows distinguishing the "unknown" case from "not present".
Part of https://github.com/vector-im/riot-web/issues/13404
2020-04-30 15:40:27 +01:00
J. Ryan Stinnett
ae5a40d686
Only consider key backup checked in error if 404
...
Other error codes are likely to mean we never actually reached the server at
all, so we should not consider that as checked.
Part of https://github.com/vector-im/riot-web/issues/13404
2020-04-30 15:22:50 +01:00
Zoe
409b7068bb
Merge pull request #1351 from matrix-org/foldleft/13167-spinner-progress
...
Added a progressCallback for backup key loading
2020-04-30 14:09:16 +01:00
Zoe
f2a12c7154
satisfy linter 2, now with more self-hatred
2020-04-30 14:06:20 +01:00
Zoe
efac2eac07
satisfy the linter
2020-04-30 12:04:29 +01:00
David Baker
f85ec08886
Merge pull request #1360 from matrix-org/dbkr/sessions_there_on_login_are_old
...
Add initialFetch param to willUpdateDevices / devicesUpdated
2020-04-29 17:42:12 +01:00
David Baker
1451fcb040
Add initialFetch param to willUpdateDevices / devicesUpdated
...
This indicates whether the device database is being populated initially
2020-04-29 17:01:50 +01:00
Zoe
4986f3c2ca
docs
2020-04-29 16:55:27 +01:00
Bruno Windels
e9edb85a32
add to_device verif request to txnId -> request map before sending
...
so if the .ready event arrives before the request finishes,
it still ends up in the correct VerificationRequest
2020-04-29 17:51:32 +02:00
Bruno Windels
025f964b0b
Merge pull request #1357 from matrix-org/bwindels/fixwaitforeventrace
...
Handle race between sending and await next event from other party
2020-04-29 13:53:35 +00:00
Bruno Windels
59412aba51
handle race between sending and await next event from other party
2020-04-29 15:45:51 +02:00
David Baker
a516f06946
Merge pull request #1354 from matrix-org/dbkr/another_round_of_toast
...
Add crypto.willUpdateDevices event and make getStoredDevices/getStoredDevicesForUser synchronous
2020-04-29 12:09:11 +01:00
David Baker
7c1f3e4519
Make getStoredDevice calls sync
2020-04-29 11:50:18 +01:00
Michael Telatynski
3bb1a6336b
Merge pull request #1350 from matrix-org/t3chguy/redaction_redesign
...
Fix sender of local echo events in unsigned redactions
2020-04-29 11:17:28 +01:00
David Baker
f053cf1fdb
Add crypto.willUpdateDevices event and make getStoredDevices/getStoredDevicesForUser synchronous
...
Add an event fired before devices are updated, so apps can monitor
changes in devices by observing the state before and after.
BREAKING CHANGE:
Make getStoredDevices/getStoredDevicesForUser synchronous so they
can safely be called from the event listener without racing with
the data being updated. They didn't do any async work so didn't need
to be async.
Add doc for crypto.devicesUpdated
2020-04-28 18:31:04 +01:00
J. Ryan Stinnett
251318eaf0
Remove the other copy instead
2020-04-28 17:20:49 +01:00
J. Ryan Stinnett
a66e7d79ad
Remove redundant key backup setup path
...
Bootstrap was create key backup twice due to some code duplication we missed in
previous refactorings.
Fixes https://github.com/vector-im/riot-web/issues/13423
2020-04-28 16:56:37 +01:00
Zoe
38884083a2
Customize error payload for oversized messages
2020-04-28 16:39:35 +01:00
Zoe
0b1088d9a8
lint
2020-04-28 11:31:41 +01:00
Zoe
875f9ca388
Added a progressCallback for backup key loading
2020-04-28 11:28:39 +01:00
David Baker
25cd1f25f1
Merge pull request #1349 from matrix-org/dbkr/retryDecryption_remove_dead_code
...
Remove some dead code from _retryDecryption
2020-04-28 11:23:53 +01:00
Michael Telatynski
7152ece70a
Fix sender of local echo events in unsigned redactions
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2020-04-27 23:52:22 +01:00
David Baker
21d3dd4506
Remove some dead code from _retryDecryption
...
I think this was attempting to remove the events from _pendingEvents
but a) it wasn't and b) it probably shouldn't be because the retry
itself will re-add them when the decryption attempt starts and remove
them if it succeeds.
Also fix what was presumably a c+p fail.
2020-04-24 14:36:42 +01:00
David Baker
300b32c8d7
Let's keep starting the timer for the retries straight away
...
rather than leaving them until next time the queue is sent
2020-04-24 13:16:07 +01:00
David Baker
19e3b35fc7
Fix immediate key request sending
2020-04-24 11:26:48 +01:00
David Baker
320811f9ed
Don't send key requests until after sync processing is finished
...
Key requests wait for a short time (500ms) before being sent as
an attempt to wait for the key to arrive before sending a request
for it, but client startup takes way longer than this so this
would still result in key requests being sent for keys that we'd
fetched but were still waiting to be read out of the sync response
and put into the database.
2020-04-24 11:19:52 +01:00
David Baker
991457496f
Merge pull request #1346 from matrix-org/dbkr/dont_talk_to_ourself
...
Prevent attempts to send olm messages to ourselves
2020-04-23 16:10:36 +01:00
Bruno Windels
ca34cb951e
Merge pull request #1345 from matrix-org/bwindels/retry4s
...
Retry account data upload requests
2020-04-23 14:28:31 +00:00
David Baker
4c2d1b0385
typo
...
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com >
2020-04-23 14:40:17 +01:00
Bruno Windels
6b4fefc123
move fn to http-api and add jsdoc
2020-04-23 15:32:40 +02:00
Bruno Windels
86913dccb0
log while retrying
2020-04-23 15:25:10 +02:00
Bruno Windels
30101a4428
cleanup, return straight away
2020-04-23 15:22:46 +02:00
Bruno Windels
668e8f6f24
exclude aborted requests and matrix errors when creating connectionerror
...
- throw an AbortError when aborting is detected
- don't turn AbortError's into a ConnectionError
- also consider the string "aborted" an AbortError for unit tests
- unit tests like to reject the request with a MatrixError,
so exclude those too
2020-04-23 15:18:52 +02:00
David Baker
2f51e206c7
Prevent attempts to send olm messages to ourselves
...
The cause of this I've seen is us sending keyshare reqiests when
we didn't have keys but them arriving when we do, and us replying to
ourseles with keys, so exclude that explicity.
Also catch this lower down to catch any other code paths that
mistaklenly try this. Hopefully the comment explains enough as to why
it won't work.
2020-04-23 13:36:54 +01:00
Bruno Windels
78b8b36a87
retry PUT account data requests
2020-04-23 13:37:56 +02:00
Bruno Windels
af3ef86d19
retry util function
2020-04-23 13:37:33 +02:00
Bruno Windels
50febaf477
throw ConnectionError when request fails
2020-04-23 13:37:10 +02:00
Bruno Windels
907f317b04
cleanup: use class for MatrixError
...
this way we get stacktraces as well
2020-04-23 13:36:40 +02:00
David Baker
b58846ab6e
Log first known index with megolm session updates
...
Move the logging lower to a point where we know the first index.
2020-04-23 11:43:22 +01:00
David Baker
32233a2c7b
Merge pull request #1343 from matrix-org/dbkr/prune_todevice_messages
...
Prune to_device messages to avoid sending empty messages
2020-04-22 13:54:29 +01:00
David Baker
8b2752441d
Prune to_device messages to avoid sending empty messages
...
Fixes https://github.com/vector-im/riot-web/issues/13322
2020-04-22 13:48:57 +01:00