0
0
mirror of https://github.com/signalapp/libsignal.git synced 2024-09-20 03:52:17 +02:00
Commit Graph

2329 Commits

Author SHA1 Message Date
Alex Konradi
83daebf72d backup: pull latest backup.proto definition, tests
Notable changes:
- subscription refactor, add backup subscription data
2024-06-06 15:28:53 -04:00
Jordan Rose
44b6057bce java (mostly): audit for checked AttestationFailedException
The "mostly" is because there was one place in the Rust layer where
establishing attestation could *additionally* generate a Noise error
(theoretically, not in practice), which gets turned into an
SgxCommunicationFailureException (suboptimally named now that we have
non-SGX enclaves, but oh well). Change that to treat that as an
AttestationData error as well, since it *is* about the data that comes
from the attestation blob rather than the actual Noise handshake.
2024-06-05 15:59:21 -07:00
Alex Konradi
12f886bff0
backup: prepend IV in example binary 2024-06-04 09:49:40 -04:00
Jordan Rose
7202905f5e net: Handle responses to requests even if the socket has since closed 2024-06-03 14:32:05 -07:00
Jordan Rose
0134e3e15c net: Use SingleRouteThrottlingConnectionManager for custom DNS lookups 2024-06-03 14:29:42 -07:00
Alex Konradi
f4c0c8ff42
chat: blanket-impl services for wrappers
Reduce code duplication by providing a simple trait for "delegating" types that 
implement ChatService by calling the same methods on an inner value. Improve 
performance by skipping a layer of boxing.
2024-06-03 16:45:35 -04:00
Jordan Rose
69ed266c0d java: Remove superfluous java_test Makefile target
Gradle's "build" action includes running tests; it's "assemble" that
doesn't. So we've been redundantly asking to run tests for a while,
and that currently does extra work due to the testing-fns variant
builds of the Android libraries. Just remove it.
2024-05-31 12:42:06 -07:00
Max Moiseev
347791c88c Bump to version 0.49.0 2024-05-31 12:27:59 -07:00
Sergey Skrobotov
3be5f45939
net: skip unknown records when parsing DNS responses 2024-05-31 11:24:10 -07:00
Alex Konradi
228eca8a6b
backup: Update backup.proto to latest version 2024-05-31 14:22:13 -04:00
Jordan Rose
8313a2cfbd Remove app-layer tests that rely on connection timeouts
This was previously done for Node in 62f347e866, while the Java and
Swift tests *did* pass but...very...slowly. Make them all consistent.
2024-05-30 13:28:07 -07:00
Alex Konradi
417379291e
Remove dynamic dispatch in convert_to_exception 2024-05-30 16:07:23 -04:00
Alex Konradi
e240e90593
Reduce code duplication due to monomorphization 2024-05-30 15:34:29 -04:00
Jordan Rose
6bbe62b157 swift: Use non-fallible String->Data conversion, per swiftlint 2024-05-30 12:31:26 -07:00
Alex Konradi
0cf9d20e21
backup: track more message backup fields 2024-05-30 11:17:38 -04:00
moiseev-signal
26ffef9ce0
net: Use EndpointParams in EnclaveEndpoint 2024-05-28 17:24:57 -07:00
moiseev-signal
75be990387
net+svr3: Enforce RaftConfig on type level 2024-05-28 14:02:38 -07:00
Jordan Rose
8b0f6f27a3 cargo update 2024-05-28 13:14:32 -07:00
moiseev-signal
71031786dc
SVR3: Support production enclaves 2024-05-28 10:09:18 -07:00
Alex Konradi
31d6015522
backups: add shared message backup test cases 2024-05-24 15:59:44 -04:00
Alex Konradi
e925c5d9d9 Bump to version 0.48.0 2024-05-24 15:06:29 -04:00
Jordan Rose
e90cf320f6 net: Improve logs for websocket connection failures 2024-05-24 10:07:30 -07:00
Alex Konradi
18f35aa316
Treat subscriber ID and currency as optional 2024-05-24 11:42:49 -04:00
Alex Konradi
f015765008
Import backup proto definition
Notable changes:
- addition of chat styles
2024-05-24 08:59:53 -04:00
Jordan Rose
e718c20095 net: Warn on excessive backpressure for server->client requests 2024-05-23 17:58:23 -07:00
Jordan Rose
e71180811a bridge: Name tokio's worker threads explicitly 2024-05-23 17:17:36 -07:00
Jordan Rose
9a8429da46 net: Add AppExpired and DeviceDeregistered errors for ChatService
And check bridging for every high-level ChatServiceError like we do
with CdsiLookupErrors.
2024-05-23 10:27:28 -07:00
Sergey Skrobotov
62f347e866
net: consolidating timeout constants 2024-05-22 16:50:53 -07:00
Jordan Rose
770dd1bbc2 node: Add cancellation support via AbortController 2024-05-22 13:11:09 -07:00
Jordan Rose
422b6098ed swift: Fix format string used for logging in tests 2024-05-22 13:10:39 -07:00
Jordan Rose
de252fd84d swift: Remove reference to deleted Logging.m 2024-05-22 13:10:39 -07:00
Jordan Rose
0cea81bb66 swift: ChatService.didReceiveIncomingMessage's sendAck is @escaping
...since acks of incoming messages are asynchronous (they don't happen
until the message is either fully processed or saved durably).
2024-05-22 13:10:39 -07:00
Alex Konradi
eb63e3037c
Import latest backup proto definition
Notable changes:
- addition of payment notifications
2024-05-22 15:25:05 -04:00
Alex Konradi
b81c6393ff
Split up backup/chat.rs
Move code for various categories of messages into their own modules. This is a 
functional no-op.
2024-05-22 10:47:20 -04:00
Alex Konradi
c4917d6329
Track values in chat-related protos
Validate some missed values from chat protos and retain the values in-memory 
for use in the backup comparator.
2024-05-22 10:02:55 -04:00
Jordan Rose
878d3d4332 bridge: Move Chat-related items into a submodule 2024-05-21 16:28:22 -07:00
Max Moiseev
1086531d79 Bump to version 0.47.0 2024-05-21 14:40:12 -07:00
Jordan Rose
a5fa231a1c bridge: Expose ChatService_InjectRawServerRequest for testing 2024-05-21 13:04:18 -07:00
Jordan Rose
a513d61a09 bridge: Expose ChatListener to Swift
(and lay groundwork for the other bridges)
2024-05-21 13:04:18 -07:00
Jordan Rose
a31d5b0dbc gen_ts_decl: Ignore "unused" warnings
It's common, especially during development, that certain items will
only be used by one bridge.
2024-05-21 13:04:18 -07:00
moiseev-signal
70ba17491c
SVR3: Implement remove API 2024-05-21 10:33:33 -07:00
moiseev-signal
c55aa17a9f
SVR3: Propagate tries_remaining on restore failure 2024-05-20 15:49:59 -07:00
Jon Chambers
59addf10ec Make ECPrivateKey#<init>(byte[]) public 2024-05-20 18:09:50 -04:00
Alex Konradi
404c52df99
Remove timeout for multi-route connection manager
The multi-route manager wraps individual connection managers with their own 
internal timeouts, so it doesn't need one of its own. Refactor the logic to 
make the error cases more clear.
2024-05-20 17:16:48 -04:00
Alex Konradi
f18b39f5b0
Revert "Move message backup proto and I/O to new crate"
This reverts commit 55536686be.
2024-05-20 16:50:03 -04:00
Jordan Rose
e1aa542bd5 ffi: Expose LibsignalLogger protocol rather than depending on DDLog
This drops the SignalCoreKit dependency for the CocoaPod, but does
mean clients will have to register their own logger explicitly.
2024-05-20 13:43:39 -07:00
Alex Konradi
3e1c50a4d5
Keep all message backup account data and call fields during validation
When converting account data and call-related protobuf messages into in-memory 
forms, retain the values of all fields instead of discarding some. This is the 
first step in making it possible to compare the in-memory versions of backups 
for testing.
2024-05-20 16:17:17 -04:00
Jordan Rose
b9e021659b java: Check for invalid key sizes more thoroughly in ECPublicKey 2024-05-20 10:41:55 -07:00
moiseev-signal
bc5875b225
SVR3: Propagate tries_remaining upon successful restore 2024-05-20 08:54:46 -07:00
Max Moiseev
1e1acff7ba SVR3: Make the tpm2 attestation test resilient to enclave changes 2024-05-20 08:43:02 -07:00