Scott Nonnenberg
9ab54b9b83
Move web_api.js and js/modules/crypto.js to TypeScript
2020-04-15 14:44:51 -07:00
Ken Powers
37ad95af27
Passive UUID fixes
2020-03-24 17:03:22 -07:00
Ken Powers
a90246cbe5
Passive UUID support
...
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-03-24 16:59:35 -07:00
Josh Perez
0843f569a0
Adds additional logging to boot path
2020-02-18 10:48:58 -08:00
Scott Nonnenberg
7ca0dfdfbe
Move logic into handleDataMessage for proper queuing
2020-02-14 16:28:35 -05:00
Scott Nonnenberg
de630a2ea8
Ensure that message.previousCounter can never go below zero
2020-01-29 14:13:50 -08:00
Ken Powers
153503efc5
Send Reactions
2020-01-23 15:57:37 -08:00
Scott Nonnenberg
e5e4f90974
Send: Gracefully degrade if we don't have sender certificate
2020-01-16 21:36:14 -08:00
Scott Nonnenberg
11266cb775
Handle both given and family name in decrypted profile name
...
* Decrypt given and family names from profile name string
* Handle both given and family name from decrypted profile name
* Ensure we properly handle profiles with no family name
2020-01-13 17:28:28 -05:00
Scott Nonnenberg
14cc11d5de
OutgoingMessage: On OutgoingKeyError, archive all sessions
...
* OutgoingMessage: On OutgoingKeyError, archive all sessions
* Improve logging
2020-01-10 11:10:43 -05:00
Ken Powers
0d3b390129
Upgrade Prettier
2020-01-08 09:44:54 -08:00
Scott Nonnenberg
38e9ddef40
Add logging to help track down 401s during registration
2019-12-03 16:29:03 -08:00
Scott Nonnenberg
e9f08c3da9
Bugfixes for v1.29
...
* If focus was set to document.body during archive, focus left pane
* Shortcut Guide: Add space between text and shortcut highlight
* Ensure that draft attachment can be closed with click on X button
* Move to keyDown event for user idle checking
* Additional resiliency around avatars; check for them on on-disk
* Increase timeouts to preserve websocket connection
* On startup, be resilient to malformed JSON in log files
* Don't crash if shell.openExternal returns an error
* Whenever we request a contact/group sync, also request block list
* Avatar popup: Ensure styling is mouse- and keyboard-appropriate
* MainHeader: Create popperRoot on demand, not on mount
* CompositionInput: Disable default Ctrl-/ shortcut
* Update libphonenumber
2019-12-03 15:02:50 -05:00
Scott Nonnenberg
c930b6c349
Additional logging in unusual error cases
...
* Add more logging with 'Over 5000 messages into future' error
* When a Bad MAC error happens on decrypt, print out more info
* Fix loggin
2019-11-11 12:59:09 -05:00
Scott Nonnenberg
fd5af8bb62
SessionRecord: Once again serialize/deserialize within libsignal
2019-10-30 12:12:30 -07:00
Scott Nonnenberg
104b694186
MessageReceiver: Ensure that we always clearTimeout before set
2019-10-30 12:12:30 -07:00
Scott Nonnenberg
f876b81493
MessageReceiver: removeFromCache no longer returns a promise
2019-10-14 11:35:29 -04:00
Scott Nonnenberg
28aed8247f
MessageReceiver: Remove contact/group sync from cache immediately
2019-10-10 14:56:14 -07:00
Scott Nonnenberg
2481784ab2
Increase maximum message counter from 2000 to 5000
2019-10-10 14:56:14 -07:00
Scott Nonnenberg
0c09f9620f
Improve message download performance
2019-10-10 14:56:14 -07:00
Scott Nonnenberg
a8a8d65e5b
MessageReceiver: Add note about out-of-band updateCache calls
2019-09-18 16:08:46 -07:00
Scott Nonnenberg
d3d2b0ec52
Use curve functions from native module
2019-08-21 14:55:12 -07:00
Scott Nonnenberg
6ac7f4ccf6
Two fixes for messages causing errors
...
* Queue delivery receipt sends, only start after we get 'empty'
* Retry cached two minutes after empty, or any post-empty message
2019-08-21 14:55:12 -07:00
Scott Nonnenberg
2beb421067
Allow for zero-length attachment pointers
2019-08-05 16:23:47 -07:00
Scott Nonnenberg
d42eb2126e
Changes to View Once
2019-08-05 16:23:47 -07:00
Scott Nonnenberg
df74103335
Two small changes
...
* Signed prekey rotation: better logging, let => const
* Ensure that we remove sync messages from cache
2019-07-19 09:35:04 -04:00
Scott Nonnenberg
cb2c691667
Improve queuing strategies in the app
2019-07-17 11:29:51 -07:00
Scott Nonnenberg
e62a1a7812
Receive support for View Once photos
2019-07-17 11:29:51 -07:00
Scott Nonnenberg
0df9b4b8fb
Prevent multiple parallel signed prekey rotations
...
* Prevent multiple parallel signed prekey rotations
* When logging error, recalculate id to capture sealed sender info
2019-07-03 14:56:49 -04:00
Scott Nonnenberg
058feb317c
Avoid crash in processing incoming message if timestamp is null
2019-05-30 12:43:18 -07:00
Scott Nonnenberg
9375300691
Set proper isRecipientUpdate flag on outgoing sync messages
2019-05-30 12:43:18 -07:00
Scott Nonnenberg
e18b6bed1f
Refactor 'waiting' flags into one location, fix timestamp check
2019-05-16 17:15:54 -07:00
Scott Nonnenberg
089a232a60
Set timestamps in dataMessage, prepare for validation
2019-05-16 17:15:54 -07:00
Ken Powers
29de50c12a
Stickers
...
Co-authored-by: scott@signal.org
Co-authored-by: ken@signal.org
2019-05-16 16:10:37 -07:00
Scott Nonnenberg
13ad4abaea
Handle and send isRecipientUpdate sync messages
...
* Handle and send isRecipientUpdate sync messages
* Disable sending isRecipientUpdates for now
2019-05-16 15:43:29 -07:00
Scott Nonnenberg
26a3342d2a
Padded attachments, attachments v2
...
* Handle incoming padded attachments
* Attachments v2 - multipart form POST, and direct CDN GET access
* Pad outgoing attachments before encryption (disabled for now)
2019-05-16 15:43:29 -07:00
Scott Nonnenberg
a450cdf528
Lint fixes for recent PRs
2019-04-08 11:30:19 -07:00
sachaaaaa
d99dc100a5
Fix arguments in MessageSenderWrapper ( #2671 )
2019-04-08 10:22:06 -07:00
Scott Nonnenberg
494806b314
libsignal-protocol: Be resilient to missing open session
2019-04-08 09:44:08 -07:00
Scott Nonnenberg
32fa5cccde
Send sync sent messages properly in 1-member group
2019-03-13 10:46:00 -07:00
Scott Nonnenberg
b83ae11cb3
Single member groups: Make all group-related sends a noop
2019-03-13 09:19:37 -07:00
Scott Nonnenberg
c76d537482
Note to Self: On just expire timer update, set TIMER_UPDATE flag
2019-03-13 09:11:39 -07:00
Scott Nonnenberg
b3ac1373fa
Move left pane entirely to React
2019-03-12 17:44:14 -07:00
Scott Nonnenberg
0b0dfbce9d
Don't return error for groups with no members but yourself
2019-03-12 17:44:14 -07:00
Scott Nonnenberg
e4f18f9daa
libsignal-protocol: Protect against null thrown Errors
2019-03-12 17:44:14 -07:00
Scott Nonnenberg
3fb6ab295f
Debug log optimizations and improvements
2019-02-20 16:51:30 -08:00
Scott Nonnenberg
77ae717b9b
Clean up shutdown handling - stop processing incoming messages
2019-02-20 16:51:30 -08:00
Scott Nonnenberg
af40ceda6c
Note to Self timer fixes for bugs reported by beta users
2019-02-20 16:40:35 -08:00
Scott Nonnenberg
7c4ba5446c
Throw error if incoming attachment has mismatched attachment size
2019-02-20 16:40:35 -08:00
Scott Nonnenberg
2c3847affe
MessageReceiver: Don't wait for cache update to move forward
2019-02-13 16:04:58 -08:00
Scott Nonnenberg
291e8d80cb
Fix asm.js errors in emscripten-generated functions
2019-02-13 16:04:58 -08:00
Scott Nonnenberg
5b54c9554e
Remove groups table, conversation is single source of truth
2019-02-13 16:04:58 -08:00
Scott Nonnenberg
b69eea543c
MessageReceiver: Don't wait for app logic to start next decrypt
2019-02-13 16:04:58 -08:00
Scott Nonnenberg
041fe4be05
Remove JSON column and Backbone Model for unprocessed
2019-02-13 16:04:58 -08:00
Scott Nonnenberg
1d2c3ae23c
Download attachments in separate queue from message processing
2019-02-12 16:34:21 -08:00
Scott Nonnenberg
a43a78731a
Note to Self
2019-02-12 16:08:51 -08:00
Scott Nonnenberg
021e807180
MessageReceiver: Log errors with proper message id
2019-02-11 18:32:05 -08:00
Scott Nonnenberg
2ce86af093
Ensure that Curve.async points to worker after startWorker call
2019-02-08 11:54:22 -08:00
Scott Nonnenberg
b3eb0646c0
Reenable send when link preview is missing an image
2019-02-07 10:21:43 -08:00
Scott Nonnenberg
813924685e
Link Previews
2019-01-29 13:53:14 -08:00
Scott Nonnenberg
91ef39e482
Ensure that blocked messages are dropped even after sealed sender
2019-01-29 13:53:14 -08:00
Bradley Sinclair
f968a5db3d
Ensure encrypting device name does not die on empty device name ( #3066 )
...
Ran into this on the Contributors guidelines setting up the development env.
registerSingleDevice does not pass a deviceName, so it fail every time.
2019-01-29 09:39:55 -08:00
Scott Nonnenberg
aab2a57b48
Some style and interaction fine-tuning
2019-01-14 17:40:31 -08:00
Scott Nonnenberg
43e5d16020
Support for web socket communication with no signaling key
2019-01-14 10:32:12 -08:00
Scott Nonnenberg
00755072ee
Include caption, width and height for outgoing attachments
2019-01-14 10:32:12 -08:00
Scott Nonnenberg
985b1d6aa6
New staged attachments UI, multiple image attachments per message
2019-01-04 12:21:26 -08:00
Scott Nonnenberg
47f834cf5c
Encrypt device name on account create, on first launch if needed
2019-01-04 12:21:26 -08:00
Scott Nonnenberg
3851bf351f
Throttle typing events, fix profile logging, fix group typing
2018-12-10 14:06:43 -08:00
Scott Nonnenberg
822ea9ae53
Improve sealed sender icon display logic
2018-11-29 15:41:26 -08:00
Scott Nonnenberg
313d08344a
Request configuration sync on startup of new version
2018-11-28 12:35:26 -08:00
Scott Nonnenberg
70eed938d9
Store arrayBuffers in database for remote identity keys
2018-11-26 16:22:49 -08:00
Scott Nonnenberg
79a861a870
Typing Indicators
2018-11-26 15:26:04 -08:00
Scott Nonnenberg
99252702e1
Support receiving multiple images in one messages
2018-11-26 15:26:04 -08:00
Scott Nonnenberg
2822f4ce40
Ensure proper order of state changes during account create
2018-11-12 15:31:17 -08:00
Scott Nonnenberg
c5f9fae444
A few small bugfixes
2018-11-12 15:31:17 -08:00
Scott Nonnenberg
e828253ef0
Restor full function syntax to custom Mocha reporter
2018-11-07 16:53:41 -08:00
Scott Nonnenberg
dbf0be2db5
eslintify all test files
2018-11-07 16:34:38 -08:00
Scott Nonnenberg
2d48daa7b6
Refine Sealed Sender behaviors
2018-11-07 16:34:20 -08:00
Scott Nonnenberg
e2e0e4c96b
Refine sealed sender logic
2018-11-01 17:00:24 -07:00
Scott Nonnenberg
1755e0adfd
Move all remaining stores to SQLCipher
2018-10-31 17:36:51 -07:00
Scott Nonnenberg
a7d78c0e9b
Sealed Sender support
...
https://signal.org/blog/sealed-sender/
2018-10-29 14:49:18 -07:00
Scott Nonnenberg
2cfbfe477a
Better handle large numbers of messages in cache on startup
2018-10-01 18:18:37 -07:00
Scott Nonnenberg
814b9cf26a
Only accept 'you left group' messages when group blocked
2018-09-17 15:58:27 -07:00
Scott Nonnenberg
c2e0ec5636
Group Blocking: Allow group metadata messages from own devices
2018-09-17 12:18:18 -07:00
Scott Nonnenberg
9c399624cc
Support for blocking groups on mobile, via group/blocked syncs
2018-09-14 16:25:43 -07:00
Scott Nonnenberg
02fbea96c0
Move base64 conversions off of the main thread
2018-08-16 17:39:30 -07:00
Scott Nonnenberg
911bc63c67
Move all arrayBuffer<->base64 functions to be async
2018-08-16 17:01:32 -07:00
Scott Nonnenberg
15751f3521
MessageReceiver.queueAllCached: Give event loop a rest
...
We don't want to queue multiple hundreds of messages at once, so we
let the event loop catch up every 20 messages queued.
2018-08-15 17:00:32 -07:00
Scott Nonnenberg
0eb2c958a5
Handle contact: don't exit early if timer is 'invalid'
2018-08-15 11:20:53 -07:00
Scott Nonnenberg
7983300f4a
Use base64 strings for incoming message cache instead of binary
2018-08-10 13:13:25 -07:00
Scott Nonnenberg
85ab4e567f
Let server know that we failed to process message on cache error
2018-08-09 10:11:12 -07:00
Scott Nonnenberg
727925a266
Clean up old messages, better handle errors from sending
2018-08-07 18:29:33 -07:00
Scott Nonnenberg
52ee6abf52
Provide needed function to migration process
...
And disable attachment cleanup for now
2018-08-07 08:30:18 -07:00
Scott Nonnenberg
44dec45995
Ensure that all messages in cache are migrated properly
2018-08-06 18:08:10 -07:00
Scott Nonnenberg
59f955ff30
On error handling cached message, show error then delete
2018-08-06 18:08:10 -07:00
Scott Nonnenberg
baf419b7b6
Ensure that we always enqueue in the same order received
2018-08-02 17:25:51 -07:00
Scott Nonnenberg
3105b77475
Migrate to SQLCipher for messages/cache
...
Quite a few other fixes, including:
- Sending to contact with no avatar yet (not synced from mobile)
- Left pane doesn't update quickly or at all on new message
- Left pane doesn't show sent or error status
Also:
- Contributing.md: Ensure set of linux dev dependencies is complete
2018-07-31 17:08:45 -07:00
Scott Nonnenberg
0774ba2903
Eslintify all of libtextsecure
2018-07-21 14:52:43 -07:00
Scott Nonnenberg
5933a34a18
Use window.log in browser context, turn on console eslint rule
2018-07-21 14:52:43 -07:00
Scott Nonnenberg
f5852bb357
Be resilient to null thrown errors so we can surface to user
2018-07-13 08:59:18 -07:00