Bruno Windels
8d0d4570dd
fix import path
2020-09-03 15:29:09 +02:00
Bruno Windels
b2fffee037
give better error when olm plaintext is not json
2020-09-03 15:28:49 +02:00
Bruno Windels
1f8005cdfd
forgot to pass account
2020-09-03 15:28:38 +02:00
Bruno Windels
e22131bf57
don't store or return our own device
2020-09-03 15:28:20 +02:00
Bruno Windels
eda15e1141
forgot to remove this after extracting function
2020-09-03 15:27:40 +02:00
Bruno Windels
8d64fa54fe
using wrong method here
2020-09-03 15:27:00 +02:00
Bruno Windels
4f4808b94c
lock on senderKey while enc/decrypting olm sessions
2020-09-03 12:12:33 +02:00
Bruno Windels
4ecd853348
Merge branch 'bwindels/e2ee' into bwindels/olm-encrypt
2020-09-03 11:44:36 +02:00
Bruno Windels
279b55e8e6
fix test
2020-09-03 11:31:00 +02:00
Bruno Windels
1492b6b6f8
cleanup of olm encryption
2020-09-03 09:53:16 +02:00
Bruno Windels
e3daef5ca9
first draft of olm encryption
2020-09-02 17:58:01 +02:00
Bruno Windels
3cb46b38ff
extract olm/Session into own file
2020-09-02 17:38:46 +02:00
Bruno Windels
f1b78a5778
extract groupBy function from olm decryption into util
2020-09-02 17:38:25 +02:00
Bruno Windels
0545c1f0c5
extract verifying a signed object from the device tracker
2020-09-02 17:37:48 +02:00
Bruno Windels
bd64aaf029
create outbound olm session from account
...
also better error handling
2020-09-02 17:37:13 +02:00
Bruno Windels
1dbabf6240
cleanup ctor
2020-09-02 14:59:17 +02:00
Bruno Windels
1ab356cd9c
wrong store name
2020-09-02 14:53:50 +02:00
Bruno Windels
95fcbe1598
typo
2020-09-02 14:52:33 +02:00
Bruno Windels
14cba7ec6e
need to pass in olm
2020-09-02 14:52:19 +02:00
Bruno Windels
1f66868566
forgot to await
2020-09-02 14:52:02 +02:00
Bruno Windels
e09fbf566d
TODO
2020-09-02 14:30:49 +02:00
Bruno Windels
7d517eb700
wire up the olm decryption,megolm room key handler and to_device handler
2020-09-02 14:30:18 +02:00
Bruno Windels
0219932f50
typo
2020-09-02 14:29:18 +02:00
Bruno Windels
6d3aa219fa
implement storing room keys
2020-09-02 14:24:38 +02:00
Bruno Windels
f5c7b1b3ec
remove obsolete comment
2020-09-02 13:35:25 +02:00
Bruno Windels
6aad751611
fix wrong idb method used in session store
2020-09-02 13:35:08 +02:00
Bruno Windels
44e9f91d4c
to_device handler for encrypted messages
...
changes the api of the olm decryption to decrypt in batch
so we can isolate side-effects until we have a write-txn open
and we can parallelize the decryption of different sender keys.
2020-09-02 13:33:27 +02:00
Bruno Windels
6788a612fc
implement olm session storage
2020-09-01 17:59:59 +02:00
Bruno Windels
5fee7fedc3
implement olm decryption algorithm
2020-09-01 17:59:39 +02:00
Bruno Windels
81a1573e3b
make a shared olm util for the whole session
2020-09-01 17:57:59 +02:00
Bruno Windels
007333628a
add todo for /sync <-> /members race
2020-08-31 16:10:18 +02:00
Bruno Windels
15ae35bbbc
add future todo
2020-08-31 16:09:38 +02:00
Bruno Windels
6580219b09
add userIdentities to sync txn
2020-08-31 16:09:24 +02:00
Bruno Windels
4077f57afb
fix typos in stores
2020-08-31 16:09:13 +02:00
Bruno Windels
aeb2f5402a
process own membership changes before device lists
2020-08-31 16:08:47 +02:00
Bruno Windels
703c89e276
make membership available on member
2020-08-31 16:07:29 +02:00
Bruno Windels
374dce638d
these are assumed to be getters
2020-08-31 16:07:18 +02:00
Bruno Windels
4fd3e2ab20
response is a method
2020-08-31 16:07:04 +02:00
Bruno Windels
d43cdfd889
don't crash when tracked user is not there
2020-08-31 16:06:40 +02:00
Bruno Windels
fef6586e5b
actually pass the room id
2020-08-31 16:06:31 +02:00
Bruno Windels
78c3157a5f
fix not taking into account Object.entries yields arrays for the pairs
2020-08-31 16:05:57 +02:00
Bruno Windels
561df45641
olm.Utility should be instanciated
2020-08-31 16:05:21 +02:00
Bruno Windels
0399562340
fix typo
2020-08-31 16:05:04 +02:00
Bruno Windels
8b7fdb2c61
create user & device identity stores
2020-08-31 14:38:03 +02:00
Bruno Windels
4ef5d4b3b8
implement hsapi /keys/query method
2020-08-31 14:24:09 +02:00
Bruno Windels
2e67b2b6b8
handle prev_content location ambiguity
2020-08-31 14:21:18 +02:00
Bruno Windels
09cb39b553
don't run afterSyncCompleted when there was an error
2020-08-31 14:13:36 +02:00
Bruno Windels
afb9ae4391
hook up device tracker with sync
2020-08-31 14:13:21 +02:00
Bruno Windels
8b358379e8
first draft of device tracker
...
mainly missing race protection with /sync and actually running the code
2020-08-31 14:12:12 +02:00
Bruno Windels
8482bc95ec
pass memberchanges around instead of members
...
so we can easily tell how their membership changes, (e.g. join -> left)
which we'll need for device tracking.
Not adding this to RoomMember because RoomMember also needs to be
able to represent a member loaded from storage which doesn't contain
this error. A MemberChange exists only within a sync.
2020-08-31 09:50:57 +02:00