Commit graph

953 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