lilia
244e051fc3
Add importKey to webcrypto.js
2014-10-26 15:54:19 -07:00
Matt Corallo
37ef492642
Remove now-broken axolotl test
2014-10-26 03:44:55 -07:00
Matt Corallo
2e7b5b46e3
Remove AES-CTR entirely
2014-10-26 03:41:11 -07:00
Matt Corallo
da0c63fb1b
Add (untested) AES-CBC switch from v3 (fs loss resulted in old tested version being lost)
2014-10-26 03:40:00 -07:00
Matt Corallo
3a39602385
Fix borked spacing in webcrypto.js
2014-10-26 03:23:34 -07:00
Matt Corallo
73f867f7de
rm useless GPL, license testvectors under X11 (ie 3-c MIT + advertising provision)
2014-10-26 02:59:59 -07:00
Matt Corallo
68a42a6ae7
Give up on webcrypto :(
2014-10-26 02:46:13 -07:00
lilia
21225b2074
Save outgoing attachments
2014-10-26 00:30:20 -07:00
lilia
3334504eff
render attachments
2014-10-26 00:30:20 -07:00
lilia
b69db59ad4
Fix buffer concatenation
...
TypedArray.prototype.set doesn't handle ArrayBuffers correctly (it
writes all zeros). Instead, wrap each ArrayBuffer in a typed array
for concatenation.
2014-10-25 23:07:14 -07:00
lilia
e07759a93c
Fix CBC encryption, test
2014-10-25 20:45:21 -07:00
lilia
e35148add8
No, jQuery, don't processData!
...
processData (default: true)
Type: Boolean
By default, data passed in to the data option as an object (technically,
anything other than a string) will be processed and transformed into a
query string, fitting to the default content-type
"application/x-www-form-urlencoded". If you want to send a DOMDocument,
or other non-processed data, set this option to false.
https://api.jquery.com/jQuery.ajax/
2014-10-25 19:48:54 -07:00
lilia
211129475c
Fix attachment ids
...
Parse attachment ids out of the attachment pointer url and return them
as strings because the copy parsed by JSON suffers a loss of precision.
Convert them to and from the format expected by the protobuf using
facilities from decodeIO.Long.
2014-10-25 18:12:20 -07:00
lilia
eebb14599f
Well that's handy
2014-10-25 18:12:07 -07:00
lilia
674b173c59
Add support for cbc encryption
2014-10-24 19:09:58 -07:00
lilia
229007040c
Basic frontend support for image attachments
2014-10-24 18:53:55 -07:00
lilia
d362d0d978
Autoscroll conversation views
...
Scroll to the bottom (most recent) message in the conversation when it
is opened, when we send a message, and when we receive a message.
2014-10-24 14:49:42 -07:00
lilia
4675cdf3f2
Webcrypto won't go down without a fight
...
Turns out that assigning a new object to window.crypto.subtle
is not so easy. That's probably a good thing.
2014-10-23 21:30:36 -07:00
lilia
a4b25f7df1
Disable the real webcrypto
...
Sadly, we are not quite compliant with the WC3 webcrypto spec
due to our insistance on passing around key data in plain old
ArrayBuffers.
Also converted whitespace.
2014-10-23 21:15:27 -07:00
lilia
c6aae62151
Small message form tweaks
2014-10-22 18:28:40 -07:00
lilia
d67b723f4f
Highlight the selected thread
2014-10-22 17:26:37 -07:00
lilia
19dac1f3df
Decorate incoming group messages
...
with numbers and image placeholders, so you know who's saying what.
2014-10-22 16:30:27 -07:00
lilia
78166365c7
Fix new message number validation
2014-10-22 16:07:16 -07:00
lilia
838283f28b
Send acks instead of closing and opening the socket
...
Hopefully the real fix for #67 until we get protocol-level pings from
the wc3 api.
2014-10-22 12:38:30 -07:00
lilia
6e2a85ccf1
wip new message phone number validation
2014-10-22 12:05:33 -07:00
lilia
e831c649bd
Require a mandatory websocket reset once a minute
...
Compensate for the lack of keepalives in the WebSocket API.
Fixes #67
2014-10-21 19:57:53 -07:00
lilia
a3bf40e852
Shorten websocket time out. Fixes #67
2014-10-21 14:26:14 -07:00
lilia
3a00e49791
Open the most recent conversation on load
2014-10-20 17:49:41 -07:00
lilia
1023ea1732
Refactor textsecure.protos -> textsecure.protobuf
...
DRY up protobuf declarations and move to a slightly briefer naming
convention.
Also dropped some ArrayBuffer -> string conversions as
ProtoBuf.js handles ArrayBuffers just fine, and in fact, more
efficiently than strings.
Finally, dropped the btoa() wrappers, because that incurs an extra
string -> string conversion before the protobuf's internal string ->
array buffer conversion. In lieu of btoa, we can simply pass in the
optional string encoding argument to the protobuf's decode method,
which in these cases should be 'binary'.
Related: #17
2014-10-20 15:11:16 -07:00
lilia
03cc667e48
Standardize some whitespace
...
The preferred style is 4 spaces.
2014-10-20 15:09:36 -07:00
Arnaud Benard
e568e2c528
Fixes #61 - Order by timestamps with tests
2014-10-20 02:07:46 -07:00
lilia
cc5327dbc9
Fix group loop
...
All the group messages were being sent to the last recipient in the
list, due to the persistence of `var number` in later loops and async
calls. An easy mistake to make, when you use for instead of each.
2014-10-18 15:00:43 -07:00
liliakai
1571868520
Merge pull request #66 from aprescott/initial-setup-instructions
...
Add some initial development setup instructions
2014-10-17 17:42:50 -07:00
Adam Prescott
ea85e41cac
Add some initial development setup instructions.
2014-10-17 20:37:35 -04:00
lilia
ac5c359053
Fix strange loop in sendMessageProto
...
Don't declare a new `var i` within the scope of an existing `var i`.
Fixes #63
2014-10-17 16:57:33 -07:00
lilia
e8399f98df
Quickfix for wonky tagsinput
2014-10-17 16:39:35 -07:00
lilia
cd55c0a1f1
Put groupid back in id field also
2014-10-17 14:32:37 -07:00
lilia
0bd5f3e3c2
If for some reason a group has no name, provide a default
2014-10-17 13:25:39 -07:00
lilia
0036e4ef74
Store group ids as strings
2014-10-17 13:11:08 -07:00
lilia
8288e298fc
Group ids should be converted to ArrayBuffers for transport
2014-10-17 12:52:46 -07:00
lilia
143254cec8
Group ids are stored in groupId
2014-10-16 17:50:36 -07:00
lilia
bbe57ef0bf
Stringify incoming group ids
...
Otherwise when we try to make their local storage keys they look like:
"egroupByteBuffer(offset=4,markedOffset=-1,length=28,capacity=112)"
2014-10-16 17:39:45 -07:00
lilia
13c06a26f9
Add phone number utils to background page
...
Quickfix.
Probably it shouldn't actually be verifying any phone numbers.
2014-10-16 14:26:16 -07:00
lilia
4f21bbd21f
Use textsecure.messaging to create groups
...
Not textsecure.storage. Sigh. Also accomodate the fact that
the group id is not returned directly, but rather at the end
of a promise chain.
2014-10-16 14:15:13 -07:00
lilia
fa4c385598
Make initial timestamp on a thread match the 1st message
2014-10-16 14:13:03 -07:00
lilia
f14cd2eed1
Don't validate presence of thread id
...
It's undefined until the first save();
2014-10-16 14:11:51 -07:00
lilia
7e9c0e2394
Group ids should be strings (or stringables)
...
ArrayBuffer was a bad choice.
2014-10-16 13:38:33 -07:00
lilia
6db3eeb52e
Convert incoming timestamps into numbers
...
Fixes #59
protip: don't use << for anything over 2^32. The operands of all bitwise
operators are converted to signed 32-bit integers
2014-10-16 12:32:02 -07:00
lilia
7a6c15bb32
Avoid background thread overwriting outgoing messages
2014-10-15 19:01:30 -07:00
lilia
d7edfd4efb
Remove reference to undefined function
2014-10-15 18:10:27 -07:00