Commit Graph

68 Commits (f63c85f5d5a82b6b5e870f36eb59e5f898ec22bc)

Author SHA1 Message Date
Matthew Chen 2b197197be Clean up timer usage.
// FREEBIE
9 years ago
Michael Kirk 5df67c8e5c move constant per code review
// FREEBIE
9 years ago
Michael Kirk fe075d2f77 Support for profile fetching so we can display SN changes upon entering
a thread

// FREEBIE
9 years ago
Matthew Chen 07bf3b9af5 Remove invalid assert in socket manager.
// FREEBIE
9 years ago
Matthew Chen 58edbdfbd9 Let users manually specify the domain fronting country.
// FREEBIE
9 years ago
Matthew Chen 98ff7e5aba Add support for manually activating censorship circumvention.
// FREEBIE
9 years ago
Matthew Chen d3fc5e4ab8 Rework how the views observe socket state.
// FREEBIE
9 years ago
Matthew Chen 45b947dc04 Rework how the views observe socket state.
// FREEBIE
9 years ago
Matthew Chen 2171cd1d96 Add support for manually activating censorship circumvention.
// FREEBIE
9 years ago
Michael Kirk c9f397d590 nullability audit for MimeTypeUtil
* added missing nullability annotations
* guard against insterting nil into set
* remove unused code

Compiler Warnings: 364 -> 343

// FREEBIE
9 years ago
Matthew Chen aa70ada399 Refine error handling for outgoing group messages.
// FREEBIE
9 years ago
Matthew Chen 42e005a498 Avoid lost messages by acknowledges message receipt after the message is processed.
// FREEBIE
9 years ago
Matthew Chen aa3402b535 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 04b3166b85 Rework socket manager.
// FREEBIE
9 years ago
Matthew Chen b7e24c664b Rework socket manager.
// FREEBIE
9 years ago
Matthew Chen 3d46f8e835 Rework socket manager.
// FREEBIE
9 years ago
Matthew Chen e28a81e6ad Improve attachment upload progress indicator.
* Should never show up for attachments in the failed state.
* Show show up without delay for attachments being sent.
* Show disappear when attachment upload fails in any way.

// FREEBIE
9 years ago
Michael Kirk fa9e289892 Don't retry some failures
Motivation:

When we introduced the MessageSendingOperation, we included a new
"retry" loop. However, this had some unintended consequences when
retrying terminal failures.

Some of these are pretty benign and invisible to the user, but some,
like messaging someone who's safety number has changed, results in a
situation where we get rate-limited by the pre-key request.

Description:

This commit includes the machinery to distinguish between retryable and
terminal failures. Upon reporting a terminal failure, the MessageSender
stops retrying to send.

// FREEBIE
9 years ago
Matthew Chen e038d24103 Apply assert to ensure singletons are only created once.
// FREEBIE
9 years ago
Matthew Chen cd4134c9da Apply assert to ensure singletons are only created once.
// FREEBIE
9 years ago
Matthew Chen 36485c9461 Remove RedPhone code.
// FREEBIE
9 years ago
Matthew Chen a1e5019370 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen e92d40a127 Fix edge cases around the websocket lifecycle.
// FREEBIE
9 years ago
Matthew Chen 0f47dc6200 Fix edge cases around the websocket lifecycle.
// FREEBIE
9 years ago
Michael Kirk db15ff5e87 Save message before sending starts.
Otherwise the message doesn't get saved until it's in the queue.
Interestingly, this could also address some of the perceived lag
mentioned in: https://github.com/WhisperSystems/Signal-iOS/pull/1850

// FREEBIE
9 years ago
Matthew Chen 88f343a0aa Attempt to fix the "frequent attachment download errors with low server ids".
// FREEBIE
9 years ago
Matthew Chen 865d9d7b96 Add "is uploaded" property to attachment streams.
// FREEBIE
9 years ago
Matthew Chen e4636e8336 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen f40629ffa0 Improve alignment between socket state and socket manager state.
// FREEBIE
9 years ago
Michael Kirk 452110b687 Include digest in attachments
- constant time compare
- free buffer passed to NSData

// FREEBIE
9 years ago
Matthew Chen 254a247ba0 Revert "Add WebRTC setting."
This reverts commit 0f45f292a1.

// FREEBIE
9 years ago
Matthew Chen df4b0616e8 Improve rate-limiting error message in registration and code verification views.
// FREEBIE
9 years ago
Michael Kirk e0688e16a7 Clean up prekey logic.
// FREEBIE
9 years ago
Matthew Chen 284212b3fe Move OWSDispatch.h to the PCH.
// FREEBIE
9 years ago
Michael Kirk 92a69e8e65 Repsond to CR w/ @cmchen.
* Added docs
* added asserts to TSEnv accessors

// FREEBIE
9 years ago
Michael Kirk cf6f107f1e Merge remote-tracking branch 'origin/master' into mkirk/webrtc
Get session corruption fixes

// FREEBIE
9 years ago
Michael Kirk f4a46fce08 Merge remote-tracking branch 'origin/master' into mkirk/webrtc 9 years ago
Michael Kirk 5d863418ea Narrow the scope of code run on SessionCipher queue
And run all non-cipher code on the main thread.

Note: Running encryption on the sessionCipher queue is more about
serializing access to session mutations than it is about any performance
gains.

// FREEBIE
9 years ago
Michael Kirk 3216fd3714 Prevent session corruption by using same queue for encrypt vs. decrypt
// FREEBIE
9 years ago
Michael Kirk 8f81015730 Remove Cuba from domain fronting.
Google hosted domain fronting doesn't work in Cuba due to export
restrictions. OTOH there are reports of Signal working just fine without
domain fronting in Cuba.

// FREEBIE
9 years ago
Matthew Chen 305541d03b Merge branch 'feature/fixWebsocket2' into mkirk/webrtc 9 years ago
Matthew Chen 79095ecfb8 Fix web socket issue.
// FREEBIE
9 years ago
Matthew Chen 0f45f292a1 Add WebRTC setting.
// FREEBIE
9 years ago
Michael Kirk d1aa253f87 WebRTC calling
* Stun server request
* settable TextSecureEnv
* nullability annotations for TSCall
* Better debug logging for message sending
* fixup tests and expiration time

// FREEBIE
9 years ago
Matthew Chen 6192351725 Remove Iran from censorship circumvention. Current approach isn't sufficient.
// FREEBIE
9 years ago
Matthew Chen 19e4b2c3a2 Revert "Remove Iran from censorship circumvention. Current approach isn't sufficient."
This reverts commit 374b45146d.
9 years ago
Matthew Chen 374b45146d Remove Iran from censorship circumvention. Current approach isn't sufficient.
// FREEBIE
9 years ago
Matthew Chen f470979434 Add asserts to .pch.
// FREEBIE
9 years ago
Matthew Chen 5b87af9bc6 Respond to CR, fix build break.
// FREEBIE
9 years ago
Matthew Chen c3af5bc742 Fix the UAE Google domain.
// FREEBIE
9 years ago