Commit Graph

27 Commits (1ed0ef5bc31e9e4794e13d6e695ce85bff1e2b72)

Author SHA1 Message Date
lilia 748f32022a Fix up refreshGroup 10 years ago
lilia f774047935 Make libtextsecure group storage asynchronous 10 years ago
lilia 9de1572ba6 Convert all storage.devices methods to be asynchronous 10 years ago
lilia 666f6baaca Async getSessionsForNumber 10 years ago
lilia 9e7d8c0a08 Rename textsecure.api and make it internal-only 10 years ago
lilia 96eafc7750 Integrate libaxolotl async storage changes
* Session records are now opaque strings, so treat them that way:
  - no more cross checking identity key and session records
  - Move hasOpenSession to axolotl wrapper
  - Remote registration ids must be fetched async'ly via protocol wrapper
* Implement async AxolotlStore using textsecure.storage
* Add some db stores and move prekeys and signed keys to indexeddb
* Add storage tests
* Rename identityKey storage key from libaxolotl25519KeyidentityKey to
  simply identityKey, since it's no longer hardcoded in libaxolotl
* Rework registration and key-generation, keeping logic in libtextsecure
  and rendering in options.js.
* Remove key_worker since workers are handled at the libaxolotl level
  now
10 years ago
Matt Corallo e33c6fddda Do not rely on deviceObject.sessions anywhere in sendmessage 10 years ago
Matt Corallo 454b4726bd Replace load/decode/index around our own number with helpers 10 years ago
lilia 857eee5003 Divorce identity wipe from tryAgain functions
We'd like to live in a world where we can retry all the pending
conflicts in a conversation as a batch, which means we don't want to
wipe the identity key before processing each message. Thus, remove that
step from these handlers and encapsulate in a method on the conversation
model.
10 years ago
lilia c642854ddf Extract app-level logic from libtextsecure
Ensure that both tryAgain functions return promises, allowing the
application to take appropriate action in the result of success or
failure. This lets us remove all dependency from libtextsecure on
app-level constructs like message objects/ids and the `extenion.trigger`
function.

Corresponding frontend changes to follow in another commit.
10 years ago
Matt Corallo d3c158f4cf Move libaxolotl out-of-tree 10 years ago
lilia 676ad04958 Add device storage method to wipe an identity 10 years ago
Matt Corallo 9c3f8a1868 Dont send group-update right before we quit the group
Fixes #166
10 years ago
lilia 40351fcc54 Sync outgoing messages
When sending an constrct a copy of the PushMessageContent protobuf, add
a SyncMessageContext, and send it to ourselves. Do this for all kinds of
group messages, and individual text/media messages, but not closeSession
messages as the latter are device-specific.

Do not sync messages if we are the primary device, which should only be
supported in development. Normal web clients must be paired with a
android or ios master device, and even in dev, a primary/standalone web
client does not support linking additional devices.
10 years ago
lilia 0e8a5806a8 Fix textsecure.closeSession
sendIndividualProto requires a timestamp.
10 years ago
Matt Corallo 1e318a8293 Add missing TODO 10 years ago
Matt Corallo b356403061 De-duplicate registrationId in deviceObject 10 years ago
Matt Corallo 1806210b26 Rewrite most of the device storage stuff 10 years ago
Matt Corallo 7d2d2d92fc Copy getRandomBytes from libaxolotl to libtextsecure 10 years ago
Matt Corallo 12844590f5 Move prekey sigcheck to libaxolotl 10 years ago
Matt Corallo bb32a51d66 s/textsecure.protocol/axolotl.protocol/ 10 years ago
Matt Corallo 403ae4376d Move attachment/websocket [en|de]cryption to libtextsecure 10 years ago
Matt Corallo 66cf5b08db Naively move textsecure.crypto into axolotl.crypto 10 years ago
Matt Corallo c112c59ce6 Fix group send (fixes #129) 10 years ago
lilia 44007ca58f Add rudimentary ui for sending a group update 10 years ago
Matt Corallo 07899557dc Give libtextsecure its own components (with way fewer deps) 10 years ago
Matt Corallo 8ad1a38b5b Move js files around for libtextsecure split 10 years ago