Wykres commitów

436 Commity (bac4d633123c4b5ebb10f00ab201c16faba5d405)

Autor SHA1 Wiadomość Data
Moxie Marlinspike 918f223149 Add preference to disable the SMS channel all together.
1) If the SMS fallback preference is disabled, no outgoing
   messages will succeed via the SMS transport.

2) If the SMS fallback preference is disabled, "mirroring" the
   SMS db state when not the default system SMS app is disabled.
2014-02-20 14:49:31 -08:00
Moxie Marlinspike c5821f770a Don't prompt for auto-initiate if push registered (or active V2). 2014-02-20 12:55:02 -08:00
Moxie Marlinspike 5b22a7bdcb Create Curve25519 identities in the next release. 2014-02-20 12:46:51 -08:00
Moxie Marlinspike 2a74dc8d82 Update the conversation UI after aborting a V1 session. 2014-02-20 12:06:11 -08:00
Moxie Marlinspike 145e4335fc Only send round-trip key exchanges over SMS. 2014-02-20 12:06:11 -08:00
Moxie Marlinspike 1d4d9663db Fix for NPE 2014-02-20 12:06:11 -08:00
Jake McGinty a0cbbd2d21 confirm session abort handler in ConversationItem
// FREEBIE
2014-02-20 11:42:15 -08:00
Moxie Marlinspike 9614dc9055 Refactor group database model and flow.
1) Use existing DB types instead of adding new columns.

2) Store group attributes in message body, like everything else.
2014-02-19 21:07:47 -08:00
Jake McGinty 0cdc6fd87d embrace the darkness, don't open quickcontact for groups
// FREEBIE
2014-02-19 15:01:10 -08:00
Moxie Marlinspike 19dddd7adf Support for an 'end session' protocol message.
1) On the push side, this message is a flag in PushMessageContent.
   Any secure message with that flag will terminate the current
   sessin.

2) On the SMS side, there is an "end session" wire type and
   the convention that a message with this wire type must be
   secure and contain the string "TERMINATE."
2014-02-19 13:50:32 -08:00
Jake McGinty 0688dd0c2c repurpose ImageDivet for avatar, minor lint, fix bitmap decoding
// FREEBIE
2014-02-19 00:01:37 -08:00
Jake McGinty 9d9a0ec218 collection of fixes based on comments/small aesthetic stuff // FREEBIE 2014-02-18 16:42:44 -08:00
Jake McGinty e05bacd8c3 fixing avatar selection when some gallery apps won't return any extras
but still succeed // FREEBIE
2014-02-18 16:42:33 -08:00
Moxie Marlinspike 760c96171d Merge branch 'master' into groups 2014-02-18 13:53:35 -08:00
Moxie Marlinspike 3999171377 Introduce registration-time ID for detecting stale sessions.
1) At registration time, a client generates a random ID and
   transmits to the the server.

2) The server provides that registration ID to any client
   that requests a prekey.

3) Clients include that registration ID in any
   PreKeyWhisperMessage.

4) Clients include that registration ID in their sendMessage
   API call to the server.

5) The server verifies that the registration ID included in
   an API call is the same as the current registration ID
   for the destination device.  Otherwise, it notifies the
   sender that their session is stale.
2014-02-18 12:51:23 -08:00
Jake McGinty abce678cb4 received group messages aren't processed as "meta" group stuff, oops. 2014-02-17 22:20:43 -08:00
Jake McGinty fb75d90edc fix bug where it opened wrong thread for TS group creates 2014-02-17 22:04:08 -08:00
Jake McGinty 25324a45b3 Show something for unnamed groups, allow us to have different default photos for groups vs. individuals 2014-02-17 21:42:30 -08:00
Jake McGinty 877ed8f59c Show TS group titles properly, hide MMS options 2014-02-17 20:25:40 -08:00
Jake McGinty 54b087c458 MMS should open conversation also 2014-02-17 20:19:54 -08:00
Jake McGinty ca51ddac7f re-privatize getRecipientForNumber 2014-02-17 20:19:35 -08:00
Jake McGinty e15ff6193f unbreak group insertion for new installs 2014-02-17 20:10:37 -08:00
Jake McGinty 93329df530 avatar selection on gb fixed, disable push groups if not push registered 2014-02-17 17:33:20 -08:00
Jake McGinty 948f888670 group ui task refactor, small bug fixes 2014-02-17 16:36:31 -08:00
Jake McGinty c19ac8ec1e less hacky way of converting ContactData to Recipients 2014-02-17 16:23:29 -08:00
Jake McGinty 04327e9ed7 refresh conversation fragment to new thread when created 2014-02-17 15:48:09 -08:00
Jake McGinty e81526e581 error messaging for group creation issues 2014-02-17 15:48:09 -08:00
Jake McGinty 4f87c1e52e better intent sequence for single contact selection 2014-02-17 15:48:08 -08:00
Moxie Marlinspike 9bb327db42 Handle SMS fallback preferences correctly, and fix directory sync. 2014-02-17 15:31:42 -08:00
Moxie Marlinspike 94b54a6d63 Fix build. 2014-02-17 13:22:37 -08:00
Moxie Marlinspike fe03a22926 Make group creation exceptions more accurate. 2014-02-17 13:19:49 -08:00
Moxie Marlinspike d8e1df9233 Check prekey identity on mismatched devices too. 2014-02-17 12:41:06 -08:00
Moxie Marlinspike 6b5753337c Putting this functionality in the hands of the user was a bad idea. 2014-02-17 12:37:34 -08:00
Moxie Marlinspike 18f3314cd2 Fix for no paradigm. 2014-02-17 11:54:39 -08:00
Moxie Marlinspike b9f4fba98a Handle identity key mismatch on outgoing group messages.
Additionally, make the group creation process asynchronous.
2014-02-17 11:43:37 -08:00
Jake McGinty 5810062b25 group action conversation items, tweaks to single contact selection 2014-02-16 21:09:15 -08:00
Moxie Marlinspike e7e5bc0884 Verify identity keys on outgoing messages.
If PreKeyEntity identity key doesn't match local DB, fail
outgoing message and queue "incoming" identity key update
message for manual user approval.
2014-02-16 15:23:49 -08:00
Moxie Marlinspike e2989373cd All push groups are 'secure' ConversationActivities. 2014-02-15 18:40:08 -08:00
Moxie Marlinspike 4e703d5a00 Correct retry logic for SMS JB+ and for push groups. 2014-02-15 18:31:25 -08:00
Moxie Marlinspike b79bc4c234 Fix for non-group threading issue. 2014-02-15 11:44:47 -08:00
Moxie Marlinspike a305bb80e6 Correctly display group members 2014-02-15 11:30:20 -08:00
Jake McGinty 8e3aa94a05 group member name tags, group convo iconography, tweaks 2014-02-15 04:21:56 -08:00
Moxie Marlinspike 7d3a2acb29 Fix build 2014-02-14 16:41:06 -08:00
Jake McGinty 9b41675f8f single contact selection 2014-02-14 16:21:48 -08:00
Moxie Marlinspike 9438973eac Switch to protobuf enums for push signal type. 2014-02-14 16:20:47 -08:00
Moxie Marlinspike 2f98622948 Fix group migration. 2014-02-14 16:18:18 -08:00
Moxie Marlinspike 067799be06 Display group actions and correctly handle group delivery. 2014-02-14 15:59:57 -08:00
Moxie Marlinspike 7c46f3cbf8 Fill in group creation actions 2014-02-13 17:10:20 -08:00
Jake McGinty 41aa53dd66 masterSecret 2014-02-13 12:36:31 -08:00
Jake McGinty b47076cf1b kill wrong finish() for mms creation 2014-02-13 12:18:17 -08:00
Jake McGinty bb4a4d33c9 handlePush and handleMms prototypes 2014-02-13 12:15:26 -08:00
Jake McGinty c5d010c86f Quick progressbar sample for network operations during group create 2014-02-13 11:44:07 -08:00
Jake McGinty 01a438de09 basic messaging when non-push users are added 2014-02-12 17:17:33 -08:00
Jake McGinty b4a4e629f1 alignment and string work 2014-02-12 12:05:18 -08:00
Jake McGinty 9cd5a67ec5 directory changes to use number instead of token, group ui progress 2014-02-12 11:35:04 -08:00
Moxie Marlinspike 0af473d880 Merge branch 'groups' of github.com:WhisperSystems/TextSecure into groups 2014-02-03 11:52:27 -08:00
Moxie Marlinspike 0ace469d74 Support for multi-device.
1) In addition to the Recipient interface, there is now
   RecipientDevice.  A Recipient can have multiple corresponding
   RecipientDevices.  All addressing is done to a Recipient, but
   crypto sessions and transport delivery are done to
   RecipientDevice.

2) The Push transport handles the discovery and session setup
   of additional Recipient devices.

3) Some internal rejiggering of Groups.
2014-02-02 19:38:06 -08:00
Jake McGinty ed3151bdb5 backward compatible navigation drawer toggle // FREEBIE 2014-02-01 19:40:46 -08:00
Jake McGinty 9fd2c4753e ui wip 2014-01-25 23:39:56 -08:00
Jake McGinty 2f01569e45 Revert "Don't stick thread IDs in the Intent extra data. Always mark all threads read from notification."
This reverts commit 91b52bed18.
2014-01-18 18:25:51 -08:00
Moxie Marlinspike 49daa45dca wip 2014-01-14 00:26:43 -08:00
Moxie Marlinspike 4851a555e7 Merge pull request #540 from WhisperSystems/lint
Fixes more lint errors
2014-01-11 10:52:32 -08:00
Ruben Pollan 6cdd2aff0d Suppress lint errors 2014-01-11 01:34:11 -10:00
Ruben Pollan c134709009 Add apn settings for some providers 2014-01-10 21:03:45 -10:00
Moxie Marlinspike 9b6d4e3696 Merge pull request #532 from mcginty/visual_refresh
WBoC Visual Refresh
2014-01-09 21:08:15 -08:00
Jake McGinty 28c1c5006b icon, contact list and conversation redesign 2014-01-09 19:06:41 -10:00
bozsco e9a8c7474c Automatically show keyboard when new SMS is composed 2014-01-09 16:52:11 -05:00
Ben Reser 149671095b Fix issue #469: Hide "Clear Passphrase" if passphrase is disabled. 2014-01-07 21:47:28 -08:00
Moxie Marlinspike c488947248 Merge pull request #453 from irv/master
Merge Fix issue #433
2014-01-07 20:08:53 -08:00
Moxie Marlinspike 04b2c3772a Support skipping password creation at setup 2014-01-07 16:27:00 -08:00
Moxie Marlinspike 5c97b1e864 Twiddle the auto initiate 2014-01-06 20:03:16 -08:00
Moxie Marlinspike dde2d2564a Fix rebase errors 2014-01-06 19:49:35 -08:00
Moxie Marlinspike 71664926e9 Better handling for unregistered users on outgoing message. 2014-01-06 14:38:41 -08:00
Moxie Marlinspike d4188c4a1c SHA256 attachment MACs. 2014-01-06 14:38:14 -08:00
Moxie Marlinspike f002072f38 New attachment API 2014-01-06 14:38:14 -08:00
Moxie Marlinspike 327ee4ff62 Remove unnecessary classes, up prekey limit to 100 2014-01-06 14:38:14 -08:00
Moxie Marlinspike 1ab4e7e9de Library accepts push connection certificate as argument. 2014-01-06 14:38:14 -08:00
Moxie Marlinspike ce5f3c5157 Validate phone numbers when formatting. 2014-01-06 14:37:52 -08:00
Moxie Marlinspike 44092a3eff Support for Axolotl protocol.
1) Split code into v1 and v2 message paths.

2) Do the Axolotl protocol for v2.

3) Switch all v2 entities to protobuf.
2014-01-06 14:37:52 -08:00
Moxie Marlinspike dc73bc2a5c Having calling code specify push URL to library. 2014-01-06 14:37:52 -08:00
Moxie Marlinspike 4380b46a35 Correctly update MMS security status. 2014-01-06 14:37:51 -08:00
Moxie Marlinspike fde8d32848 Subtle rebase conflicts... 2014-01-06 14:37:51 -08:00
Moxie Marlinspike dadabdfaa8 Make UI responsive to UniversalTransport upgrades. 2014-01-06 14:36:23 -08:00
Moxie Marlinspike c38a8aa699 Migrate to Curve25519.
1) Generate a Curve25519 identity key.

2) Use Curve25519 ephemerals and identities for v2 3DHE agreements.

3) Initiate v2 key exchange messages.

4) Accept v1 key exchange messages.

5) TOFU Curve25519 identities.
2014-01-06 14:36:22 -08:00
Moxie Marlinspike dbc070cd65 Refactor the ciphertext message parsing and building. 2014-01-06 14:36:22 -08:00
Moxie Marlinspike 44d59d0fd1 Correctly store destination SMS state. 2014-01-06 14:36:21 -08:00
Moxie Marlinspike 51b9affe90 Add federation support for attachment retrieval. 2014-01-06 14:36:21 -08:00
Moxie Marlinspike 246cd10454 Bundle e164 and relay into PushDestination 2014-01-06 14:36:21 -08:00
Moxie Marlinspike ca3c82f581 Simply PushServiceSocket constructor. 2014-01-06 14:36:21 -08:00
Moxie Marlinspike 5b2caa0074 Make relay arguments consistent. 2014-01-06 14:36:21 -08:00
Moxie Marlinspike fa5ccc3f8a Support for server federation. 2014-01-06 14:35:54 -08:00
Moxie Marlinspike 25a2ad7289 Add directory refreshing at 24hr intervals. 2014-01-06 14:35:54 -08:00
Moxie Marlinspike eb4cc7f4e5 Add incoming message sources to active token dir. 2014-01-06 14:35:54 -08:00
Moxie Marlinspike 1ac32346c1 Graduate to a rebased and gradle world. 2014-01-06 14:35:54 -08:00
Moxie Marlinspike 2d083208cc Handle negative directory case and unlisted contacts. 2014-01-06 14:35:54 -08:00
Moxie Marlinspike 75cca3add1 Resign ourselves to a less sophisticated contact intersection method. 2014-01-06 14:35:53 -08:00
Moxie Marlinspike 073b1f69e3 Rollbacks, v2 sms-transport key exchanges, push identity conflicts.
1) Stop protocol rollbacks.

2) Handle v2 version key exchange messages.

3) Handle identity key conflicts on prekeybundle messages.
2014-01-06 14:35:53 -08:00
Moxie Marlinspike 5e6d39beea Move classes into library 2014-01-06 14:35:53 -08:00
Moxie Marlinspike 8f6590b738 Handle notifications and receiving push when locked. 2014-01-06 14:35:53 -08:00
Moxie Marlinspike 0dd36c64a4 Basic support for encrypted push-based attachments.
1) Move the attachment structures into the encrypted message body.

2) Encrypt attachments with symmetric keys transmitted in the
   encryptd attachment pointer structure.

3) Correctly handle asynchronous decryption and categorization of
   encrypted push messages.

TODO: Correct notification process and network/interruption
      retries.
2014-01-06 14:35:53 -08:00