Moxie Marlinspike
f9934bd8e5
Modernize libtextsecure layout
2014-11-12 15:29:59 -08:00
Moxie Marlinspike
1182052c7f
Rename library to libtextsecure
2014-11-12 15:29:58 -08:00
Moxie Marlinspike
0d06d50a65
Let's have JobManager only deal with checked exceptions.
...
Also, switch to Builder for JobManager construction.
2014-11-12 15:29:58 -08:00
Moxie Marlinspike
d9d4ec9d9d
Fix some bugs with PKWM padding and attachment detection.
2014-11-12 15:29:58 -08:00
Moxie Marlinspike
9a6f65988f
Add support for dependency injection, and accompanying tests.
2014-11-12 15:29:58 -08:00
Moxie Marlinspike
601e233d47
Add account management interface to libtextsecure api
2014-11-12 15:28:08 -08:00
Moxie Marlinspike
ae178fc4ec
Move API around a little, eliminate TransportDetails interface.
2014-11-12 15:26:25 -08:00
Moxie Marlinspike
cafe03a70a
Transition the outbound pipeline to JobManager jobs.
2014-11-12 15:26:25 -08:00
Moxie Marlinspike
99f42e2ee1
Move API around.
2014-11-12 15:21:32 -08:00
Moxie Marlinspike
a3f1d9cdfd
Beginning of libtextsecure refactor.
...
1) Break out appropriate components.
2) Switch the incoming pipeline from SendReceiveService to
the JobManager.
2014-11-12 15:21:32 -08:00
Jake McGinty
4cab657ebe
clear pending slides when attachment reselected
...
Fixes #2012
// FREEBIE
2014-10-29 18:50:11 -07:00
Jake McGinty
db6f8618e6
padding workaround for bug in appcompat-v7 21.0.0
...
bug: https://code.google.com/p/android/issues/detail?id=77982
// FREEBIE
2014-10-29 18:28:20 -07:00
Jake McGinty
98af1fb6ee
shorten blocks of text
...
// FREEBIE
2014-10-29 16:53:25 -07:00
Jake McGinty
ad1d55f12d
enable proguard
...
// FREEBIE
2014-10-29 16:53:21 -07:00
Jake McGinty
7df49811b7
replace ABS with AppCompat
...
// FREEBIE
2014-10-29 16:51:55 -07:00
Jake McGinty
ff2ac8a66e
refactor ListenableFutureTask and make saves async
...
// FREEBIE
2014-10-28 02:25:41 -05:00
Jake McGinty
53da1f849a
in-app image media preview
...
// FREEBIE
2014-10-28 00:50:01 -05:00
Moxie Marlinspike
503d1ef452
Bump version to 2.2.0
...
// FREEBIE
2014-10-24 16:51:15 -07:00
Moxie Marlinspike
9accd92757
Updated language translations.
...
// FREEBIE
2014-10-24 13:18:52 -07:00
agrajaghh
306da92031
Test case and fix for deferred jobs.
...
Closes #2033
2014-10-24 12:08:03 -07:00
Moxie Marlinspike
e7b6a852c5
Fix bug caused by 1mod8 compatibility issue.
...
In the switch from v3, we bind identities in the message MAC
instead of doing the 1mod8 trick. Since identity keys were
never set as 1mod8, it seemed like we could just remove it.
However, PreKeys are durable. If an old client upgrades to v3,
it has a bunch of keys that *were* set to 1mod8 floating around.
The Curve25519 donna code re-sets the private key bits on every
operation, which results in a different key, and breaks the output
of an agreement.
So now we don't intentionally generate keys with 1mod8, but we
have to remove the donna code to honor existing 1mod8 keys for
the rest of time. Trevor is squarely to blame.
// FREEBIE
2014-10-23 17:11:46 -07:00
Moxie Marlinspike
9dfaf19516
Merge pull request #2028 from mcginty/revert-generic-contenttype
...
revert content-type generics
2014-10-22 19:37:45 -07:00
Jake McGinty
34aece0b43
revert content-type generics
...
// FREEBIE
2014-10-22 19:37:04 -07:00
Moxie Marlinspike
9768de2d5e
Short circuit self-send.
...
// FREEBIE
2014-10-22 18:28:03 -07:00
Moxie Marlinspike
c3eb0ea9db
Check job requirements are satisfied in between retry iterations.
...
// FREEBIE
2014-10-21 13:50:38 -07:00
Moxie Marlinspike
4cdc0a3e61
Make signed prekey generation happen through the job queue.
2014-10-21 12:47:08 -07:00
Moxie Marlinspike
b568ce70b2
Make delivery receipts work correctly for groups.
2014-10-20 21:06:34 -07:00
Moxie Marlinspike
18b0601990
Dependency updates and gradle housekeeping.
2014-10-20 21:06:09 -07:00
Moxie Marlinspike
b308996885
Switch to using our own JobManager.
...
// FREEBIE
2014-10-20 19:13:06 -07:00
Moxie Marlinspike
73d896f378
Index shouldn't be unique.
2014-10-20 19:02:42 -07:00
Moxie Marlinspike
36ec1d84a1
Implement delivery receipts.
...
1) Support a "receipt" push message type.
2) Identify messages by timestamp.
3) Introduce a JobManager to handle the queue for network
dependent jobs.
2014-10-20 19:02:42 -07:00
Moxie Marlinspike
8d6b9ae43e
Incorporate PR feedback. Add license and eliminate duplicate code.
...
// FREEBIE
2014-10-20 18:38:52 -07:00
Moxie Marlinspike
a95cc0eba2
Switch to byte array.
...
// FREEBIE
2014-10-20 18:35:45 -07:00
Moxie Marlinspike
58d101ff2e
Support for job "group ids."
...
A job can specify a group id, and jobs with the same group id
will run sequentially.
2014-10-20 18:35:45 -07:00
Moxie Marlinspike
544f06451f
Persistent job queue, derivative of android-priority-jobqueue.
...
// FREEBIE
2014-10-20 18:35:45 -07:00
Moxie Marlinspike
20cf775b1e
Fix up routing activity actions.
2014-10-20 14:55:34 -07:00
Moxie Marlinspike
5fcc135f81
Make sure senderkeys encrypt is correctly initialized.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
9a0ed659f7
Initial support for sender keys.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
54612159be
Update ed25519 extract and tests
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
355d0be78a
Introduce new simultaneous initiate strategy.
...
1) Fix bugs that prevented decrypt() from being non-transactional
in some cases.
2) Introduce a new unified storage interface.
3) Transition simultaneous initiate from the "needs refresh"
strategy to one that uses session state resurrection and
promotion.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
73b75a4a27
Fix build.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
c4209a65e3
Don't assert on bad padding.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
9dce376780
Correctly handle formatting when "one time PreKey" is absent.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
07c61394e9
When processing PreKeyBundle, archive current session if it exists.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
3e287f930d
Better thread safety for session building <-> use.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
7b1a37bd91
Make registration ID optionally extended.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
2db44a1578
Make generated PreKeyIds exclude both 0 and Medium.MAX_VALUE.
2014-10-20 12:25:40 -07:00
Moxie Marlinspike
006c9aae7b
Only remove unsigned prekey if bundled message decrypts properly.
2014-10-20 12:25:39 -07:00
Moxie Marlinspike
b147a90463
This exception is never thrown.
2014-10-20 12:25:39 -07:00
Moxie Marlinspike
741171c49f
Switch to CBC mode with a derived IV.
...
1) Since we're not CPU or space constrained (and are in fact
padding), and since keystream reuse would be more catastrophic
than IV reuse without chosen plaintext.
2014-10-20 12:25:39 -07:00