Commit graph

914 commits

Author SHA1 Message Date
Bruno Windels
cb940bf143
Merge pull request #77 from vector-im/bwindels/devicetracking
Implement device tracking for E2EE rooms
2020-08-31 14:16:46 +00: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
Bruno Windels
164384f312 forgot memberlist member 2020-08-31 08:54:27 +02:00
Bruno Windels
8da00f9a03 add isTrackingMembers flag to know if EncryptionUsers have been written
for this room
2020-08-31 08:53:47 +02:00
Bruno Windels
d813e6d932 store encryption event content rather than just flag in room summary 2020-08-31 08:53:10 +02:00
Bruno Windels
693682f360 move e2ee constants to common file 2020-08-28 14:35:47 +02:00
Bruno Windels
2b6530b459
Merge pull request #76 from vector-im/bwindels/maintain-otks
Maintain OTKs above max/2
2020-08-28 12:03:29 +00:00
Bruno Windels
e751333bbd don't assume setting up a session went all the way through when stopping 2020-08-28 13:58:42 +02:00
Bruno Windels
a1ba5d7dba between syncs, generate more otks if needed, and upload them 2020-08-28 13:58:17 +02:00
Bruno Windels
681dfdf62b sync otk count to e2ee account 2020-08-28 13:56:44 +02:00
Bruno Windels
d64db185bd await callback in case we need to read, then write from it 2020-08-28 13:54:42 +02:00
Bruno Windels
3ab5a72221 give e2ee account values a prefix so we can prevent from clearing them 2020-08-28 13:52:27 +02:00
Bruno Windels
d24be7ee55 extract constants out 2020-08-28 13:51:58 +02:00
Bruno Windels
d7d1d8c45a Merge branch 'master' into bwindels/e2ee 2020-08-28 12:11:33 +02:00
Bruno Windels
a9df0df465 release v0.0.34 2020-08-27 20:54:31 +02:00
Bruno Windels
deae644158
Merge pull request #75 from vector-im/bwindels/sortbyroomtags
store and sort by m.lowpriority tag
2020-08-27 18:53:52 +00:00
Bruno Windels
6a9cbf7f33 store and sort by m.lowpriority tag 2020-08-27 20:52:51 +02:00
Bruno Windels
a4c2ad2346 Merge branch 'master' into bwindels/e2ee 2020-08-27 20:11:08 +02:00
Bruno Windels
1ee592ea85 make tests work on node 14 2020-08-27 20:10:44 +02:00
Bruno Windels
e8efd52223 Merge branch 'master' into bwindels/e2ee 2020-08-27 20:04:49 +02:00
Bruno Windels
3815f9c4a0
Merge pull request #73 from vector-im/bwindels/nonnativehashforbuild
use xxhashjs instead which will also work on windows
2020-08-27 18:03:46 +00:00
Bruno Windels
d51d43abfe use xxhashjs instead which will also work on windows 2020-08-27 20:02:20 +02:00
Bruno Windels
16b681a79a don't commit lib dir 2020-08-27 19:51:32 +02:00
Bruno Windels
68a3e8867b populate lib dir entirely in postinstall script 2020-08-27 19:51:04 +02:00
Bruno Windels
b14eed9309
Merge pull request #72 from vector-im/bwindels/upload-initial-keys
Upload initial E2EE keys
2020-08-27 17:17:42 +00:00
Bruno Windels
cdb83dd3c9 adjust copyright 2020-08-27 19:15:31 +02:00
Bruno Windels
4c290f0394 upload identity and one-time keys 2020-08-27 19:13:24 +02:00
Bruno Windels
f98b3dd5fa create/load olm account before first sync 2020-08-27 19:13:09 +02:00
Bruno Windels
7bf2a3929c add another-json as a dependency
also add a postinstall script to turn it into an ES module,
so it works with our setup
2020-08-27 18:45:54 +02:00
Bruno Windels
3b24ea34f3 Merge branch 'master' into bwindels/e2ee 2020-08-27 14:40:57 +02:00
Bruno Windels
a53c061f27
Merge pull request #71 from vector-im/bwindels/splitup-session-values
Store session values as separate entries in store
2020-08-27 12:40:19 +00:00