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
Moxie Marlinspike
cddba2738f
Make encoding/decoding more explicit.
2014-01-06 14:35:53 -08:00
Moxie Marlinspike
0cc5837d7f
Support encrypted transport, properly handle multiple recipients.
...
1) Add encryption support for the transport layer. This obscures
metadata from the push messaging provider.
2) Better support the direction multiple destination messages is
headed (one unique message per recipient).
2014-01-06 14:35:53 -08:00
Moxie Marlinspike
68ec0a3727
Add last resort key and signaling key.
2014-01-06 14:35:53 -08:00
Moxie Marlinspike
45e380a5bb
move constants into library
2014-01-06 14:35:52 -08:00
Moxie Marlinspike
1bbcedabd4
Added SMS transport support for PreKeyBundle messages.
...
1) Added SMS transport support.
2) Keep track of whether a PreKeyBundle message has gotten
a response, and send them as subsequent messages until
one has been received.
2014-01-06 14:35:52 -08:00
Moxie Marlinspike
c3b8b62d32
Delete pre-key record when establishing agreement.
2014-01-06 14:35:52 -08:00
Moxie Marlinspike
43492b66c4
Rename EncryptedMessage
2014-01-06 14:35:52 -08:00
Moxie Marlinspike
7f642666dd
Basic support for prekeybundle message delivery and receipt.
2014-01-06 14:35:52 -08:00
Moxie Marlinspike
1cc2762656
Refactor relationship between SessionCipher and Message.
2014-01-06 14:35:52 -08:00
Moxie Marlinspike
d1969412fb
Move PreKey ids to be Mediums, generate in circular buffer.
2014-01-06 14:35:51 -08:00
Moxie Marlinspike
edb89ee3e9
Encode prekey as full JSON rather than protobuf blobs.
...
1) Split prekey messages out into full JSON.
2) Add support for retrieving prekeys.
2014-01-06 14:35:51 -08:00
Moxie Marlinspike
499de2d2bf
Move prekey jsonifcation into the push code, add identity key.
2014-01-06 14:35:51 -08:00
Moxie Marlinspike
b8f663b69c
Move common crypto classes into TextSecureLibrary.
...
1) Move all the crypto classes from securesms.crypto.
2) Move all the crypto storage from securesms.database.keys
3) Replace the old imported BC code with spongycastle.
2014-01-06 14:35:51 -08:00
Moxie Marlinspike
2042ca6cb7
Generate "prekeys" at push registration time.
...
This generates a large number of key exchange messages and
registers them with the server during signup.
2014-01-06 14:34:47 -08:00
Moxie Marlinspike
cfb7b8fcba
Consider unregistered if authorization fails.
...
This should only occur if another device has registered with the
same number, effectively making the current device unregistered.
2014-01-06 14:34:46 -08:00
Moxie Marlinspike
03ff55db97
Actually set the preference to unregistered
2014-01-06 14:33:53 -08:00
Moxie Marlinspike
fb378a6e00
Change attachment retrieval interface
2014-01-06 14:33:53 -08:00
Moxie Marlinspike
9287d413ac
Support for incoming attachments.
...
1) Refactored MMS layer to use abstracted types.
2) Added support for retrieving attachment IDs.
2014-01-06 14:33:52 -08:00
Moxie Marlinspike
4bb337a3a0
Revised support for outgoing attachments
2014-01-06 14:33:52 -08:00
Moxie Marlinspike
fd045f2354
Refactor MMS send/download to be synchronous.
...
1) Make the radio change a synchronous action with a timeout.
2) Move the send logic into an MmsTransport, in preparation for
UniversalTransport composition.
3) Move the download logic into a synchronous receiver.
2014-01-06 14:33:52 -08:00
Moxie Marlinspike
53803630d4
Enable TextSecure universal transport.
2014-01-06 14:33:52 -08:00
Moxie Marlinspike
d7070e7ecf
Inserted the Registration activity into initial setup flow.
...
1) Added push messaging toggle to preferences.
2) Added push messaging registration screen to setup flow.
3) Migrated rest of SharedPreferences accessors to
TextSecurePreferences.
2014-01-06 14:30:03 -08:00
Moxie Marlinspike
52e5274a2f
Add registration notification support.
2014-01-06 14:21:51 -08:00
Moxie Marlinspike
0ed9da9a2c
Strings and slight cleanup
2014-01-06 14:21:50 -08:00
Moxie Marlinspike
26dadfcb7a
Move trust store to raw resource from asset.
2014-01-06 14:21:50 -08:00
Moxie Marlinspike
1ac06312a0
Move directory and push service socket into library.
2014-01-06 14:21:50 -08:00
Moxie Marlinspike
a200d29514
Move most of Util into library
2014-01-06 14:21:50 -08:00
Moxie Marlinspike
21eee19380
Split into library project and add shared preferences layer of indirection.
2014-01-06 14:20:59 -08:00
Moxie Marlinspike
0958c30400
Stringify
2014-01-06 14:19:06 -08:00
Moxie Marlinspike
3634ba0b55
Registration with voice verification.
2014-01-06 14:18:30 -08:00
Veeti Paananen
eb1b762a76
Improve password caching notification UI & UX
...
On Jelly Bean and above:
- Use the standard notification style for a better and consistent visual
appearance
- Use the JB notification actions API for the locking action
- Use a lower notification priority to prioritize other notifications
over TextSecure
On ICS:
- Use the existing custom notification layout
Everywhere:
- Allow opening the app itself from the notification
- Simplify strings: don't talk about a "cached passphrase" but about the
app being "unlocked"/"locked"
2013-12-22 04:48:39 +02:00
nicky g
a0c821f6ac
set unread message count in notifications.
...
was not able to squash commit requesting new pull
2013-12-19 02:44:42 +05:30
Moxie Marlinspike
d260cdcc9f
Add giffgaff APN defaults. // FREEBIE
2013-12-17 16:57:40 -08:00
Moxie Marlinspike
496d5e21d2
Add Slovenia APN defaults
2013-12-17 16:53:35 -08:00
Veeti Paananen
6eb094c87e
Show LED and ringtone setting values in their summaries
...
As instructed in the Android design guidelines. Also removed unnatural
capitalization.
2013-12-17 03:13:22 +02:00
Veeti Paananen
f18324e2d6
Add tab swiping in the contact picker
2013-12-16 22:17:52 +02:00
Andy Irving
91b52bed18
Don't stick thread IDs in the Intent extra data. Always mark all threads read from notification.
2013-12-14 16:55:24 +00:00
Moxie Marlinspike
7c2fb74af4
Fix for bug that could drop unencrypted MMS on KitKat.
2013-12-07 11:03:26 -08:00
Moxie Marlinspike
7489f3463a
Change the way notifications work for non-default KitKat.
...
Messages that are not "secure" (encrypted or key exchange) are
automatically marked as read if TextSecure isn't the default
KitKat SMS app.
This change in functionality allows people who aren't using
TextSecure as a default SMS app on KitKat to still receive
notifications when they get incoming encrypted messages.
2013-12-07 11:03:25 -08:00
Andy Irving
7f44b029fe
use PendingIntent.FLAG_UPDATE_CURRENT in calls to PendingIntent.getActivity() to avoid re-using the same extra data on every intent.
2013-12-03 21:48:16 +00:00
Moxie Marlinspike
c2b809c7c6
Fix for long multipart message bug on some ROMs.
2013-12-03 08:21:31 -08:00
Moxie Marlinspike
e0aa7fd359
Let unencrypted messages through.
2013-12-03 08:10:58 -08:00
Veeti Paananen
10580a7f20
Fix crash when no SMS package is set
2013-12-03 09:06:16 +02:00
Moxie Marlinspike
aad82e314d
Fix duplicate MMS bug in KitKat.
...
1) Fix for typo that caused duplicate incoming MMS.
2) Only pay attention to "use for all" properties in < KitKat.
2013-12-02 21:39:09 -08:00
Moxie Marlinspike
fda01796ab
Merge pull request #421 from wsot/master
...
Fix issue #410 : DecryptingPartInputStream could return more data than re...
2013-12-02 12:43:23 -08:00
Moxie Marlinspike
b0216e1494
Finish KitKat compatibility details.
...
1) The system does actually enforce having a BROADCAST_SMS
permission on the SMS receiver. Break out the "delivered"
parts of this into a separate Receiver, so the permission
won't trip up GB devices.
2) The system does actually enforce having "quick response"
intents. Add a no-op for now.
3) Add a "make default" prompt.
4) Update settings to reflect what's going on in KitKat.
2013-12-02 12:31:59 -08:00
Gabe Conradi
e81756f443
Proper SMS support for KitKat.
2013-12-02 08:32:34 -08:00
Simeon Morgan
4931d7327b
Switch to two-space indentation, remove inline comments.
2013-11-14 17:53:38 +11:00
Simeon Morgan
adfa3c1b10
Optimised use of buffers when decrypting to avoid unnecessary array copying properly.
2013-11-12 13:37:57 +11:00
Simeon Morgan
3cc6344c8b
Optimised use of buffers when decrypting to avoid unnecessary array copying
2013-11-12 13:31:30 +11:00
Simeon Morgan
546dd5485c
Fix issue #410 : DecryptingPartInputStream could return more data than requested, causing segfaults in BitmapFactory on Android 4.4.
2013-11-12 12:57:47 +11:00
Moxie Marlinspike
73bf21602a
Move ReceiveKeyActivity back to themed dialog activity.
2013-10-20 19:12:53 -07:00
Moxie Marlinspike
798e3c0656
Merge pull request #384 from meskio/383_batch_selection
...
Add deselect to batch selection mode
2013-10-20 16:59:41 -07:00
Moxie Marlinspike
891e3aeb97
Merge pull request #381 from meskio/add_contact
...
New 'add contact info' option on the conversation contextual menu
2013-10-20 16:58:58 -07:00
rhodey
2c2a03e5e2
Enhanced MMS configuration prompts and processing.
...
1) Added a new message status to MmsDatabase to
signify a pending MMS download which requires
APN settings.
2) Added a database method to query MMS messages
based on status.
3) Added login to SendReceiveService for processing
of MMS pending APN information.
4) Moved all APN/MMS settings into ApnPreferencesActivity
and transformed PromptApnActivity into a simple
informational activity.
5) Added logic to check for APN settings on send and
receive of all MMS (media, group, email) and direct
user to PromptApnActivity then ApnPreferencesActivity
if necessary.
6) Vocab/grammar adjustments.
2013-10-20 16:56:34 -07:00
Ruben Pollan
c7b39eca11
Add deselect to batch selection mode
2013-10-20 18:25:01 +02:00
Ruben Pollan
3d690faff0
New 'add contact info' option on the conversation contextual menu
...
This option is used to add phone numbers from the contact list on the
messages.
2013-10-17 02:28:36 +02:00
Moxie Marlinspike
f3fdde6040
Merge pull request #376 from meskio/extension_saving_attachment
...
Set the right extension on saving an attachment
2013-10-15 07:35:14 -07:00
Moxie Marlinspike
f49c62793b
Merge pull request #377 from meskio/resend_message_on_fail2
...
Allow to resend a failed message
2013-10-15 06:32:12 -07:00
Ruben Pollan
04eafd5fab
Allow to resend a failed message
...
Add an option to the context menu of the message to resend it if it has
failed.
2013-10-13 15:39:15 +02:00
Ruben Pollan
73b1e3f3d4
Set the right extension on saving an attachment
2013-10-13 14:45:04 +02:00
Moxie Marlinspike
8d115562f0
Merge branch 'master' of github.com:WhisperSystems/TextSecure
2013-10-13 04:07:45 -07:00
Moxie Marlinspike
f26b9070f2
Update PRNG fix code sample.
...
Google updated their code sample to account for restrictive
SELinux configurations on some devices.
2013-10-13 04:06:58 -07:00
Moxie Marlinspike
2cbc4d3b0a
Merge pull request #372 from meskio/key_notification
...
Upgrade notification KeyCachingService code to use NotificationCompat.Builder
2013-10-12 09:20:48 -07:00
Moxie Marlinspike
ee8c8530bf
Merge pull request #373 from d3sre/issues-273
...
Issues 273
2013-10-12 09:17:51 -07:00
Moxie Marlinspike
763e4b1b27
Merge pull request #367 from nikolai-r/master
...
add option to disable audible inthread notifications
2013-10-12 09:15:54 -07:00
Desiree Sacher
4f49216103
corrected class info of NullPointerException messages
2013-10-12 15:32:45 +02:00
Desiree Sacher
ed4c8cd799
extended log of encrypted and plaintext messages NullPointerException
2013-10-12 15:29:03 +02:00
Ruben Pollan
4826dbcc34
Upgrade notification KeyCachingService code to NotificationCompat.Builder
2013-10-12 15:04:16 +02:00
Nikolai Rusakov
2cf7f82f07
closes #367 - add option to disable audible inthread notifications
2013-10-11 22:19:35 +00:00
Moxie Marlinspike
1c8f8666ba
Make the switch to gradle!
...
1) ABS is now published as an AAR, so we can eliminate all local
dependencies and bundled jars.
2) Upgrade to ABS 4.4.0 (The Last Release) and deal with the loss
of Sherlock.Dialog by faking it with our own themes.
3) Remove all traces of ant. The modern world is here.
2013-10-10 13:52:24 -07:00
joshua stein
99e3e596bb
Correctly preserve MMS image aspect ratios.
2013-10-10 01:43:48 -07:00
Steve R
45f4faaf4c
Fix for timeout interval bug
...
Regardless of which theme is used, the text color for the timeout
interval was being set to black. This made it difficult to
read when using the Dark Theme.
2013-08-23 00:05:19 -04:00
Moxie Marlinspike
b14d9d84ad
Fix for Android PRNG bug.
...
There is apparently an Android vulnerability with the PRNG it
provides through the JCE. This uses their suggested code to patch
the PRNG, and provides the option to regenerate identity keys.
http://android-developers.blogspot.com/2013/08/some-securerandom-thoughts.html
2013-08-15 11:27:14 -07:00
Moxie Marlinspike
8281ef18d4
Fix for ShortBufferException problem introduced in Android 4.3
...
Not really sure how it's possible for the system to give us an
extra block of data, but it does if both the input and output
buffers are sized the same during the first decrypt. This
fixes things, but I wish I better understood why it was broken.
2013-08-10 09:09:00 -07:00
Moxie Marlinspike
7bd520cb41
Fix for batch selection bug
2013-07-22 15:30:12 -07:00
Moxie Marlinspike
7d07d56fc3
Fix for 'bad encrypted message' errors.
...
1) There was a regression in the outgoing multipart transport
logic, such that the same 'identifier' byte would be used
for all messages (0). This now works correctly.
2) Added some additional heuristics on the receiving side.
Now mutlipart containers are only valid for 1hr, and are
considered invalid if the container size is different from
the multipart message size.
2013-07-22 15:04:31 -07:00
Moxie Marlinspike
4281df7a28
display emoji correctly on devices of all densities
2013-07-15 17:33:30 -07:00
Moxie Marlinspike
c827f0a2a7
Merge pull request #249 from joeykrim/patch-1
...
Small clarification in the comments on the types of SMS to ignore
2013-07-14 11:33:23 -07:00
joeykrim
8464bc775a
Removed extra comparisons by converting original phrase to uppercase, then comparing
...
Removed previous multiple comparisons that were variations of capitalizing the same phrase by converting the original phrase to all uppercase and then comparing
2013-07-13 16:41:09 -04:00
joeykrim
c89cac8785
Changed new Thread() to use new AsyncTask()
...
Changed new Thread() to use new AsyncTask() - same as was done in src/org/thoughtcrime/securesms/service/KeyCachingService.java - d97252d8d6
2013-07-12 22:40:14 -04:00
Moxie Marlinspike
dfa710a6fc
Don't use ConnectivityManager checkRouteToHost for IPv6
...
T-Mobile LTE now uses IPv6 addresses for their MMSC, which are
incompatible with ConnectivityManager's checkRouteToHost.
2013-07-12 15:25:34 -07:00
joeykrim
87e8214bae
Small clarification in the comments on the types of SMS to ignore
2013-07-08 10:16:25 -04:00
Moxie Marlinspike
d97252d8d6
Add ability to disable local encryption passphrase.
2013-07-01 10:15:36 -07:00
Moxie Marlinspike
68b82c168e
Add in-app language selection support.
2013-06-29 18:03:55 -07:00
Moxie Marlinspike
4977092f7a
Add support for soft keyboard 'enter' key.
2013-06-29 15:37:47 -07:00
Moxie Marlinspike
93c222fe9c
Added "recent emoji" panel as an LRU cache.
2013-06-29 09:51:08 -07:00
Moxie Marlinspike
71e161c792
Switched to new emoji lookup pattern, added rendering support.
2013-06-28 16:56:30 -07:00
Moxie Marlinspike
2e31cfed11
Basic support for composing emoji
2013-06-27 20:57:27 -07:00
Moxie Marlinspike
288b416988
Fix NPEs
2013-06-25 13:20:29 -07:00
Moxie Marlinspike
e00914c977
Fix QR Code Regression.
2013-06-25 10:48:18 -07:00