Commit graph

3053 commits

Author SHA1 Message Date
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
Bruno Windels
09a018ade1 store sync token and filter id under the same key in session
as they are updated together
2020-08-27 14:36:50 +02:00
Bruno Windels
14b27f81fe store session values as individual values in store
so we don't have to write the whole object every time something changes
we'll use this to store the olm account
2020-08-27 14:28:40 +02:00
Bruno Windels
25f3dfbb75 fix failing test 2020-08-27 14:22:59 +02:00
Bruno Windels
f2f8777a18
Merge pull request #70 from vector-im/bwindels/loadolm
Load olm at application bootstrap
2020-08-27 11:33:03 +00:00
Bruno Windels
87aabb3057 make crypto.getRandomValues available on IE11 without a prefix
olm needs this to work on IE11
2020-08-27 13:32:13 +02:00
Bruno Windels
fe0257bca1 load olm and pass it to session 2020-08-27 13:24:55 +02:00
Bruno Windels
92fdbe15df pass olm paths to main fn
so build can adjust the file paths,
and we can prevent olm from loading by not passing them
2020-08-27 13:24:04 +02:00
Bruno Windels
a6daa13d1d Merge branch 'master' into bwindels/e2ee 2020-08-27 12:52:42 +02:00
Bruno Windels
d81c739b82
Merge pull request #69 from vector-im/bwindels/add-olm
Add olm as a dependency + prototype on how to use
2020-08-27 10:49:01 +00:00
Bruno Windels
a6d92b7c17
Merge pull request #68 from vector-im/bwindels/fix-room-sorting-stability
use same check for timestamp validity
2020-08-27 10:44:38 +00:00
Bruno Windels
05821b0fdf use same check for timestamp validity as timestamp can be undefined sometimes 2020-08-27 12:42:38 +02:00