moiseev-signal
7b293c19e0
ketrans: Update test account data
2025-03-11 14:31:18 -07:00
Alex Bakon
24d2870b60
Use separate error types for chat connect vs. send ( #1431 )
2025-03-10 15:42:42 -04:00
Jordan Rose
835611fc7b
Expose preconnectChat() to Swift and Java
...
Also added a JUnit Rule for initializing the libsignal logger to
print to stderr.
2025-03-07 10:35:07 -08:00
Jordan Rose
340324f5e4
Add X-Signal-Alert callbacks for Android and iOS
2025-03-05 15:02:20 -08:00
Jordan Rose
2ebd7cd2b3
Check for X-Signal-Alert header, and report it in a callback
...
This on-connect header will be used for lightweight "alerts" from the
server to an authenticated client. For now, it's only threaded through
to the Node implementation; the iOS and Android ones will come later.
2025-03-04 15:07:23 -08:00
Alex Bakon
ffdb35f59f
Improve error handling for ChatConnection
2025-02-21 16:06:37 -05:00
Alex Bakon
2ba84ac051
Bridge chat response sending as synchronous
2025-02-21 15:29:20 -05:00
Alex Bakon
efd6ef2424
Expose both CDSI connect methods
2025-02-19 14:19:56 -05:00
moiseev-signal
3a8bb9581f
keytrans: Replace monitor with monitor_and_search in Android bridge
2025-02-12 13:05:35 -08:00
Alex Bakon
b34d84575f
Remove chat service from bridge
2025-02-07 15:30:38 -05:00
Alex Bakon
23005551f2
Test chat connection send path
...
Add a test for the request send path and response receive path using the fake
chat connection. This would have caught the bug fixed by bf680b09 .
2025-02-05 15:15:34 -05:00
Milan Stevanovic
7785b8c3f6
Milan/mp4san update to v0 5 3 ( #1343 )
...
Propagating the mp4san new feature through all the layers of libsignal.
The feature allows seamless handling of transcoded MP4 files on Android, where multiple MDAT boxes (one per chunk of A/V streams) are first compounded and then passed to mp4san for format correction.
2025-02-04 11:17:35 -08:00
Jordan Rose
bd9a11f943
bridge: Separate proxy validation from proxy setting
...
And expose an explicit setInvalidProxy, both for testing and in case
apps want to do their own connection-poisoning.
This makes it easier to be consistent about "if you try to set a proxy
that turns out not to be valid, the ConnectionManager should end up in
the invalid state until explicitly cleared", whether the validation is
done on the Rust side of the bridge or the app language side.
2025-02-03 14:09:56 -08:00
andrew-signal
bf680b095a
Remove ChatConnection.Response, use ChatService.Response instead
2025-02-03 15:05:29 -05:00
Jordan Rose
9f496569ff
Node: use JavaScript's URL class to provide Net.setProxyFromUrl
...
Also improves tests around proxies for all three languages.
2025-01-31 13:24:24 -08:00
Alex Bakon
c42963cfdf
Write listener bridging tests for chat connection
2025-01-31 14:03:52 -05:00
Alex Bakon
4277227203
Enable producing an array as output from Sho[Api]
2025-01-28 10:15:34 -05:00
Jordan Rose
c1ad890487
Expose a more complete Net.setProxy(...) to apps
...
This takes a full set of components describing the connection to a
proxy: a scheme, a host, and optionally a port and auth information.
The previous `setProxy(String, u16)` signature is still available for
Signal TLS proxies in particular, but now we have the flexibility to
support other kinds of proxies as well.
2025-01-27 17:53:09 -08:00
Jordan Rose
527222cf1f
Revert "Implement and expose Net.setProxyFromUrl()"
...
This adds more code size than expected.
2025-01-22 11:49:14 -08:00
Jordan Rose
7e1be4700d
Implement and expose Net.setProxyFromUrl()
...
This takes a full URL (as a string) to use as a proxy. The previous
`setProxy(String, int)` signature is still available for Signal TLS
proxies in particular, but now we have the flexibility to support
other kinds of proxies as well.
2025-01-22 11:42:00 -08:00
Alex Bakon
6eab52c405
Support KeyTransparencyClient with chat connection
2025-01-22 11:09:08 -05:00
Alex Bakon
0b5650f0c2
Pass null to Java chat interrupted cbs if intentional
2025-01-17 15:20:34 -05:00
Alex Bakon
f5d34398fb
Bridge ChatConnection to Java
2025-01-17 11:44:07 -05:00
Alex Konradi
a060aa6f74
Add fn to check that an AccountEntropyPool string is valid
2024-12-19 15:39:15 -05:00
moiseev-signal
cf98c1a054
Remove SVR3 bridge from all platforms
2024-12-12 17:11:26 -08:00
moiseev-signal
0321d6d920
keytrans: Bridge monitor API to JNI
2024-12-06 16:00:55 -08:00
Alex Konradi
975f9b31c7
Pass tokio runtime handle to ws2::Chat::new
2024-12-06 06:04:07 -05:00
moiseev-signal
fc5b786fb7
keytrans: Remove ChatSearchContext type
2024-12-05 15:51:00 -08:00
moiseev-signal
107479ec4f
keytrans: Rework the Store abstraction
2024-12-03 17:10:35 -08:00
Jordan Rose
e03e665c57
Introduce OnlineBackupValidator
...
Validates a backup frame-by-frame, bypassing the encryption,
compression, and integrity-checking layers. Intended for use during an
export the user is waiting for, such as linking a new device.
2024-11-20 12:04:33 -08:00
Alex Konradi
b0117ea6ad
Deprecate PniAsServiceId credential issuer methods
2024-11-19 07:35:23 -05:00
Alex Konradi
0dd5a0242f
Remove CDSI return_acis_without_uaks
2024-11-18 09:50:47 -05:00
moiseev-signal
b53778e5aa
keytrans: Support /search and /distinguished APIs through Chat Server
2024-11-13 11:24:47 -08:00
Alex Konradi
9b70d85ff0
Remove MakeChatListener trait
2024-11-12 16:52:01 -05:00
andrew-signal
716e3d0124
Bridge ChatListener to Android
...
Co-authored-by: Jordan Rose <jrose@signal.org >
2024-11-12 15:16:52 -05:00
Jordan Rose
447f3655b5
java: Add a tool to run the backup validator through the bridge
...
./gradlew backup-tool:run --args "--hmac-key abcd --aes-key cdef
path/to/backup"
2024-11-07 10:13:35 -08:00
Jordan Rose
7b75edeecd
Add an API to ConnectionManager to enable/disable "connection fallbacks"
...
This will be off by default, unlike in previous releases of libsignal.
2024-11-05 13:45:52 -08:00
andrew-signal
42fe2b07a9
Nit: correct error in (Un)authenticatedChatService javadoc
2024-11-04 14:41:19 -05:00
andrew-signal
9c18d4ebed
Split Java ChatService into Authenticated and UnauthenticatedChatService; use UnauthenticatedChatService
2024-11-04 08:07:27 -05:00
Alex Konradi
e882c68b00
Expose rate-limited error from Chat
2024-10-31 17:22:25 -04:00
Jordan Rose
b777cbcc90
Improve context for BackupKey key derivations
2024-10-31 09:28:59 -07:00
Jordan Rose
005412660c
Add BackupKey.deriveThumbnailTransitEncryptionKey
...
One last key derivation that was previously omitted.
2024-10-31 09:28:59 -07:00
Jordan Rose
22252be035
Expose additional key derivations to apps via new BackupKey class
2024-10-29 09:47:50 -07:00
Jordan Rose
39e8616479
backup: Expose MessageBackupKey's HMAC and AES keys
...
This lets clients use MessageBackupKey for their own key derivation.
2024-10-28 09:53:23 -07:00
Jordan Rose
595b5d78f3
account-keys: Adjust backup ID derivation
...
The new derivation can be used for both messages and media backup IDs.
2024-10-28 09:53:07 -07:00
Jordan Rose
497d88b0b6
java: Add a shim to handle Base64 on both Android and Oracle Java
2024-10-24 16:59:42 -07:00
Jordan Rose
a328e3278c
backup: Expose new ways of constructing MessageBackupKey
...
And switch the encrypted backup tests over to AccountEntropyPool.
2024-10-23 10:34:09 -07:00
Alex Konradi
01102bbab1
Provide additional information on CDSI errors
2024-10-22 13:57:50 -04:00
gram-signal
0ed3d49d20
Switch SVR3 testing environment.
2024-10-18 09:41:29 -07:00
andrew-signal
9fa6cf51f9
First iteration of JNI API for AccountEntropyPool
2024-10-03 14:59:27 -04:00