Commit Graph

17 Commits (b4ceab21cb6e2922c6fe30916b05b4a8bd78029a)

Author SHA1 Message Date
Matthew Chen b6ddea9eae Sketch out OWSIdentityManager.
// FREEBIE
9 years ago
Michael Kirk 5b12f4afae Prevent outgoing calls started from various places unless have been seen
e.g. from contacts app

// FREEBIE
9 years ago
Michael Kirk 1a03be8ae7 Fetch safety number upon entering thread
* uniform method to get recipients in group/contact thread
  * use it to clean up markAsSeenJob

// FREEBIE
9 years ago
Michael Kirk 4b8544d5f7 ensure atomic write to wasSeen property
// FREEBIE
9 years ago
Michael Kirk bb25d2beb6 IdentityKeyStore changes
1) Always accept keys from incoming messages

2) Block sending only if it's a recent change, or if always
   block is enabled

// FREEBIE

// FREEBIE
9 years ago
Matthew Chen 2e36f41838 Add support for manually activating censorship circumvention.
// FREEBIE
9 years ago
Michael Kirk d7c7fff679 Fix some compiler warnings
* explicit optional usage in strings
* remove some unused StringUtil code
* swiftlint affected files
* more concise optional casting (and avoid a `!`)

Compiler warnings: 343 -> 318

(Actually most of these are in external libs, but 115 remain in Signal/SSK)

// FREEBIE
9 years ago
Matthew Chen 1558d8c6c5 Avoid lost messages by acknowledges message receipt after the message is processed.
// FREEBIE
9 years ago
Matthew Chen effa885614 Rework socket manager.
// FREEBIE
9 years ago
Michael Kirk 6ba5e5cc6b Clean up session-reset logging
// FREEBIE
9 years ago
Michael Kirk d8ae941736 Delete session *before* sending EndSession message
Typically we're sending an EndSession message because our session has
diverged from the remote party's session. So if we send an EndSession
message, but decrypt it with our old out-of-sync session, how can we
expect them to be able to decrypt it?

Instead, by deleting the existing sessions, we'll fetch a new PreKey,
and start fresh with the remote side.

// FREEBIE
9 years ago
Michael Kirk 033591aeca Remove unused code
// FREEBIE
9 years ago
Michael Kirk 7f239c8040 [SSK] + Enforce singleton access for MessagesManager and MessageSender
// FREEBIE
9 years ago
Michael Kirk ba4569f5bd delete unused code
//FREEBIE
9 years ago
Michael Kirk ddba843d44 Censorship circumvention in Egypt and UAE
* domain fronting
* non-websocket message fetching

// FREEBIE
9 years ago
Michael Kirk 28a2a4610c Fix compiler warnings.
// FREEBIE
9 years ago
Michael Kirk c6a2fbff23 Tapping corrupted message opens "session reset" activity
This action was previously hidden under a secret longpress gesture in
the fingerprint view controller.

Ideally we'd never receive corrupted messages, but at the point we do,
our sessions are out of whack, and the only recovery option is to reset.
Let's help our users do that.

* Resetting session sends END_SESSION message

  Otherwise the remote side wouldn't know we reset the session and will
  send us a message on the old ratchet.

* Don't reset their identity key when resetting sender ratchet.

* Updated translations

// FREEBIE
9 years ago