Scott Nonnenberg
5369950c1d
Don't promote archived sessions, more logging on error
2020-12-09 14:05:11 -08:00
Josh Perez
318013e83d
Handles safety number changes while in a call
2020-12-08 14:37:04 -05:00
Scott Nonnenberg
26884432a2
Update TypeScript, Prettier and typescript-eslint for new TypeScript 3.8 syntax
2020-11-23 14:45:44 -05:00
Evan Hahn
8bfaf598af
Add license headers across the project
2020-11-04 13:03:13 -06:00
Chris Svenningsen
8a2c17f65f
Apply new ESLint rules to legacy code
2020-09-09 17:34:57 -07:00
Ken Powers
bf04c9114e
Harden UUID-handling code paths
2020-07-30 13:10:03 -07:00
Scott Nonnenberg
acf95f4745
resetSession: Take both UUID and e164, use each correctly
2020-06-10 14:39:45 -07:00
Ken Powers
1b5c36a9a8
Add more safeguards to isTrustedIdentity
2020-04-29 17:42:41 -07:00
Scott Nonnenberg
6b094e1514
Refactor: Move data-access code to Typescript w/ shared interface
2020-04-15 14:45:11 -07:00
Ken Powers
a90246cbe5
Passive UUID support
...
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-03-24 16:59:35 -07:00
Scott Nonnenberg
fd5af8bb62
SessionRecord: Once again serialize/deserialize within libsignal
2019-10-30 12:12:30 -07:00
Scott Nonnenberg
785e31b154
SettingsView: Remove unused localization strings
2019-10-30 12:12:30 -07:00
Scott Nonnenberg
0c09f9620f
Improve message download performance
2019-10-10 14:56:14 -07:00
Scott Nonnenberg
5b54c9554e
Remove groups table, conversation is single source of truth
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
9c540ab977
Add cache support to Signal Protocol Store
2019-02-13 16:04:58 -08:00
Scott Nonnenberg
1755e0adfd
Move all remaining stores to SQLCipher
2018-10-31 17:36:51 -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
cd60bdd08a
Move conversations to SQLCipher
2018-10-01 18:18:37 -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
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
f39a96bc76
Move to centralized message/cache data layer
...
Also, ensure that conversation.messageCollection has nothing in it
unless it has an associated ConversationView.
2018-07-27 10:55:10 -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
43a44793c5
Remove jshint - move everything over to eslint
...
Also removed all hints of previous linters
2018-07-17 15:54:32 -07:00
Scott Nonnenberg
cfe0bd0e79
Move to npm for several dependencies
...
mustache
jQuery
underscore
backbone
mocha
chai
intl-tel-input
2018-05-23 16:26:48 -07:00
Daniel Gasienica
95321e5d3e
Remove Vim mode lines
2018-04-30 16:53:34 -04:00
Daniel Gasienica
1dd87ad197
Format all source code using Prettier
2018-04-30 16:53:34 -04:00
Scott Nonnenberg
26c273618a
Refactor: db tasks to database.js, log delete to modules/logs.js
2018-03-14 14:42:15 -07:00
Scott Nonnenberg
198f356792
Return number (not id) in getNumber, remove unnecessary comment
2018-03-14 14:42:13 -07:00
Scott Nonnenberg
9acb189650
Remove config after unlink, clear db when linked with new number
2018-03-14 14:42:13 -07:00
Scott Nonnenberg
2cfdaca3c1
Make our binary comparisons constant time ( #2047 )
2018-02-14 12:15:26 -08:00
Scott Nonnenberg
7b49180bc0
Big update to new signal branding ( #2018 )
2018-01-30 14:22:51 -08:00
Scott Nonnenberg
33fd9c5dd4
Account setup: confirm first signed prekey, clear prekeys ( #1979 )
2018-01-17 15:28:32 -08:00
Scott Nonnenberg
bbab4bba10
Fix device ID check, clean up prekey fetch logging ( #1961 )
...
* DeviceId is a string, so we use the less-strict comparison
* Clean up prekey fetch logging
2018-01-10 18:12:24 -08:00
Scott Nonnenberg
c195ba2630
Save prekeys optimistically, track confirms, new clean behavior ( #1846 )
...
* Re-enable libtextsecure unit tests, get passing, run in CI
* Save prekeys optimistically, track confirmed, new clean behavior
* Eliminate potential conflicts when rotating on startup
* Remove last symlink: get libtextsecure tests running on windows
2017-12-01 13:35:39 -08:00
Scott Nonnenberg
d9a48478ec
Logging for prekey fetches, load of log files ( #1836 )
...
* Log the files discovered in logPath
I've encountered some logs which include very old entries; and my
suspicion is that we're not cleaning up old log files properly.
* Log prekey fetches (success and failure), just like signed keys
* Force log file information into the final web-ready log
2017-11-30 11:56:46 -08:00
Scott Nonnenberg
44da6924f9
A variety of logging improvements to track down bugs ( #1832 )
...
* Log when we get a blocked numbers sync message
* Save three old signed keys in addition to the current active
* Remove the mystery from all the error-related log messages
* Log successful load of signed key - to help debug prekey errors
* removeSignedPreKey: Don't hang or crash in error cases
* Log on top-level unhandled promise rejection
* Remove trailing comma in param list, Electron 1.6 does not like
* Harden top-level error handler for strange object shapes
2017-11-30 11:56:29 -08:00
Scott Nonnenberg
f0ec75eef4
removeSignedPrekey: Be resilient to delete returning nothing ( #1769 )
2017-11-14 16:37:44 -08:00
Scott Nonnenberg
ef3431af1b
isUntrusted: Return false if firstUse is true
...
Because users will see this upon first trying to communicate with a new
contact if they're quick about it.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
4f90cefd4f
More bullet-proofing - reject surrounding promise if save() fails
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
bd0050b6c6
Cache messages on receipt, remove from cache when processed
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
91f50c028f
Unify processVerifiedMessage with Java implementation
...
This removes our support for the New Key/DEFAULT case, which iOS will
sync to us. Why? Because it ensures that in out of date scenarios, we
don't lose the higher-security state we were in previously.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
23a806a6b1
removeAllSessions: properly reject in failure cases
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
f654532fa8
Handle UNVERIFIED sync verification messages (via contact sync)
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
20451cc827
Show verified/keychange notifications when actually relevant
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
e91f2d0377
Miscellaneous wire-up to ensure that failures propagate
...
FREEBIE
2017-08-04 12:03:25 -07:00
lilia
3206536d47
Fix deadlock in saveIdentity
...
Archive only sibling sessions so as not to block on the same device lock as the
protocol lib.
// FREEBIE
2017-08-04 12:03:25 -07:00
lilia
e5e4eab9c5
Add archiveSiblingSessions
...
// FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
7bfb66b13b
processVerifiedMessage: Archive all sessions when key changes
...
FREEBIE
2017-08-04 12:03:25 -07:00
lilia
d7054f4b63
Archive sessions whenever an identity key changes
...
Sessions established with the previous identity should no longer be used for
sending, so we should close them.
Since we've added this call to saveIdentity, we can omit the call to it after
profile fetches.
// FREEBIE
2017-08-04 12:03:25 -07:00