Commit graph

78 commits

Author SHA1 Message Date
Matthew Chen 07ac17fd39 Sync verification state.
// FREEBIE
2017-06-07 15:16:45 -04:00
Matthew Chen 90d671924f Sync verification state.
// FREEBIE
2017-06-07 15:16:45 -04:00
Michael Kirk 0c2a1ff89f avoid deadlock on unknown session
// FREEBIE
2017-06-07 12:36:17 -04:00
Michael Kirk 81d36a4652 code cleanup per code review
// FREEBIE
2017-06-07 10:11:01 -04:00
Michael Kirk 167961a45f restore call-back for changed identities
// FREEBIE
2017-06-07 08:31:40 -04:00
Matthew Chen 702f7677c6 Sketch out OWSIdentityManager.
// FREEBIE
2017-06-06 14:12:50 -04:00
Michael Kirk ab378f79b4 better message receipt logging
// FREEBIE
2017-06-05 09:31:12 -04:00
Matthew Chen 66927f206d Cache display names for accounts.
// FREEBIE
2017-05-30 09:40:47 -04:00
Michael Kirk 42b35bb897 Don't notify for some error messages
Specifically:

- Don't play alert when building block offer

- Don't play/show redundant alert/lockscreen notifications for id changes
  e.g.: if you share 100 groups with Bob, and Bob's SN change, you only
  need *one* notification, even though we display the message in 100
  group threads + 1 contact thread.

// FREEBIE
2017-05-26 15:43:35 -07:00
Matthew Chen c75769d407 Rename attachment source filename property.
// FREEBIE
2017-05-19 17:20:58 -04:00
Matthew Chen e6ff79c126 Revert "Merge branch 'charlesmchen/autoMarkAsRead'"
This reverts commit 25e086c221, reversing
changes made to 77833e727a.
2017-05-12 16:21:46 -04:00
Matthew Chen 0936dd936b Don’t reply to “request group info” messages from non-members of the group in question.
// FREEBIE
2017-05-12 12:39:36 -04:00
Matthew Chen 8d10d19f8f Only reply to group info requester.
// FREEBIE
2017-05-12 11:38:24 -04:00
Matthew Chen 6e52009ff0 Rework the “disappearing messages” logic.
// FREEBIE
2017-05-10 14:54:15 -04:00
Matthew Chen d5118273b8 Respond to CR.
// FREEBIE
2017-05-10 10:05:01 -04:00
Matthew Chen 315775ff23 Auto-rejoin groups by emitting and responding to “request group info” messages.
// FREEBIE
2017-05-10 09:42:26 -04:00
Matthew Chen 2a64ff29e5 Temporary change to improve read receipt logging. 2017-05-03 17:26:48 -04:00
Michael Kirk 52b19a9118 better debug messages about what *kind* of encrypted message we received
Uniform logging, removing redundant logging wherever possible, to add
details about what kind of message was received.

In particular, with calls, when there are lots of messages going back
and forth, this makes it easier to make sense of what's being exchanged.

// FREEBIE
2017-05-01 10:26:29 -04:00
Matthew Chen 6686167cc3 Ignore oversize messages.
// FREEBIE
2017-04-20 17:20:39 -04:00
Michael Kirk a21108db5c Log message type in prod
// FREEBIE
2017-04-19 19:04:25 -04:00
Matthew Chen 0ab6bcd080 Rework outgoing message state.
// FREEBIE
2017-04-17 16:11:51 -04:00
Matthew Chen 42e005a498 Avoid lost messages by acknowledges message receipt after the message is processed.
// FREEBIE
2017-04-17 16:05:59 -04:00
Matthew Chen 0224af7465 De-bounce the prekey checks.
// FREEBIE
2017-04-14 14:31:28 -04:00
Michael Kirk bb38fce54e Ensure that deleting sessions happens on session queue
// FREEBIE
2017-04-06 19:24:16 -04:00
Michael Kirk 773b09b015 Inspect session store on serial queue
// FREEBIE
2017-04-06 18:55:10 -04:00
Michael Kirk 7578176e37 rename sessionCipher to sessionStoreQueue
// FREEBIE
2017-04-06 16:29:12 -04:00
Matthew Chen 723174e14e Respond to CR.
// FREEBIE
2017-04-03 14:42:04 -04:00
Matthew Chen d47ddd112d Filter outgoing messages using the blacklist.
// FREEBIE
2017-04-03 14:30:15 -04:00
Matthew Chen af4faaa601 Filter incoming messages using the blacklist.
// FREEBIE
2017-04-03 14:29:53 -04:00
Matthew Chen cd4134c9da Apply assert to ensure singletons are only created once.
// FREEBIE
2017-03-31 18:36:08 -04:00
Matthew Chen 02004a75f9 Respond to CR.
// FREEBIE
2017-03-31 13:43:18 -04:00
Matthew Chen f036d75fcb Avoid redundant "block list changed" sync messages in TSBlockingManager.
// FREEBIE
2017-03-31 13:43:18 -04:00
Matthew Chen f5237ef5d1 Add TSBlockingManager.
// FREEBIE
2017-03-31 13:43:18 -04:00
Michael Kirk 61fe71f0ca MessageSender should be accessed as singleton
// FREEBIE
2017-03-30 12:48:36 -04:00
Michael Kirk b73594b234 Better envelop logging.
Previously it was basically impossible to trace recipients in debug
logs.

// FREEBIE
2017-03-23 17:08:31 -04:00
Matthew Chen 7f681e964b Improve logging around decryption exceptions.
// FREEBIE
2017-03-22 09:52:12 -04:00
Michael Kirk a92158ef16 CR: fix register async where specified
* fix thread test
* add IncomingMessageFinder test
* use constants
* clearer comments

// FREEBIE
2017-02-24 19:15:35 -08:00
Michael Kirk b389bb3bb8 Code cleanup.
No need to use contactThread method to get recipient ID since we still
have the envelope.

And with that, it's pretty easy to justify getting rid of one of our now
barely used IncomingMessage initializers.

// FREEBIE
2017-02-24 19:15:35 -08:00
Michael Kirk 975726e022 Dedupe incoming messags
// FREEBIE
2017-02-24 19:15:35 -08:00
Michael Kirk e0688e16a7 Clean up prekey logic.
// FREEBIE
2017-02-10 16:12:28 -05:00
Michael Kirk e1949893f2 Avoid deadlock when marking self-sent messages as read.
Fetching the localNumber invokes another transaction, which can
result in deadlock if called during an existing transaction.

// FREEBIE
2017-02-08 18:34:31 -05:00
Matthew Chen 284212b3fe Move OWSDispatch.h to the PCH.
// FREEBIE
2017-02-08 16:25:28 -05:00
Matthew Chen df1b3418d2 Respond to CR.
// FREEBIE
2017-02-06 11:25:56 -05:00
Matthew Chen 6d356e4b67 Automatically mark as read any messages sent by current user from another device.
// FREEBIE
2017-02-04 13:15:15 -05:00
Michael Kirk cf6f107f1e Merge remote-tracking branch 'origin/master' into mkirk/webrtc
Get session corruption fixes

// FREEBIE
2017-01-25 11:33:07 -05:00
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
2017-01-24 15:52:58 -05:00
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
2017-01-11 17:15:20 -05:00
Michael Kirk edebd14d42 Ignore messages with unknown Envelope.Contents
// FREEBIE
2016-12-09 08:45:20 -05:00
Russ Shanahan 7125028159 Rename an OWSContactsManager method
From nameStringForPhoneIdentifier
  To displayNameForPhoneIdentifier

* Add nullability descriptions

* Fix the mock object to adhere to new nullability rules

// FREEBIE
2016-12-02 18:48:29 -05:00
Michael Kirk 3083e2929c OWSContact from CNContact
Used in new contact picker for the Signal invite flow 

* populate emails
* nullability annotations

// FREEBIE
2016-11-26 12:29:02 -05:00