0
0
mirror of https://github.com/signalapp/libsignal.git synced 2024-09-19 19:42:19 +02:00
Commit Graph

2433 Commits

Author SHA1 Message Date
Alex Konradi
e84af68a1b
Use workspace.dependencies for common dependencies 2024-08-26 14:16:06 -04:00
Alex Konradi
9e6061a172
Reduce the number of heap allocations in DNS lookup code
Remove some indirection and heap allocation. Introduce a named type for 
readability. This is a pure refactor; no behavior changes.
2024-08-23 17:57:29 -04:00
Rolfe Schmidt
ace1b575bd
Add dates to SVR domain separation tags 2024-08-23 15:54:30 -06:00
gram-signal
8ed3317422
SVR - add lifetimes to Restore* to avoid copies. 2024-08-23 11:45:50 -07:00
Jordan Rose
97dfb275d6 android: Update to NDK r27 (current latest) 2024-08-23 11:23:05 -07:00
Alex Konradi
a655f12b03
Fix HTTP client bugs and clean up 2024-08-23 13:59:19 -04:00
Alex Konradi
2b377f2499
Upgrade remaining GH images to macos-latest 2024-08-22 16:25:39 -04:00
gram-signal
b59a4ed7bd
SVR - KDF for new protocol. 2024-08-22 10:41:50 -07:00
Graeme Connell
42f3daac11 SVR - client-driven rotation logic for new protocol. 2024-08-22 09:42:26 -07:00
Jordan Rose
9d36753ab1 net: Limit cached DNS results to a 5 minute TTL 2024-08-22 09:23:40 -07:00
Jordan Rose
174b498523 Update .gitignore for replacement of java/shared/resources in 3d1c45f1 2024-08-22 09:23:16 -07:00
Jordan Rose
4470192aa6 java: When running Cargo as part of Gradle, fall back to ~/.cargo/bin
This is important when the Gradle configuration is processed by an IDE
on macOS, which won't have had PATH set by shell login scripts.
2024-08-22 09:23:16 -07:00
Jordan Rose
21dbd79192 java: Update to Gradle 8.6 and AGP 8.4.1 to match Signal-Android 2024-08-22 09:23:16 -07:00
Jordan Rose
4a1ed695b0 java: Specify working directory relative to project root 2024-08-22 09:23:16 -07:00
gram-signal
d090ace5e9
Handle errors better (and modify SVR4 protocol to have unified errors). 2024-08-21 12:14:44 -07:00
Jordan Rose
134324c8c4 Bump to version v0.56.0 2024-08-20 16:27:15 -07:00
Jordan Rose
518d7a9b6d
jni: Ensure we always check for exceptions from JNI calls
Lots of JNI calls can throw Java exceptions, not just those that
directly invoke Java methods. By making jni's Error not directly
convert to our own error types, calling code is encouraged to check
for exceptions on any JNI call.
2024-08-20 15:58:30 -07:00
Sasha Weiss
2485492f71
backup: Drop the receivedAtTimestamp field from Reaction 2024-08-20 15:53:20 -07:00
Jordan Rose
2f7f83d45b swift: PreKeyRecords lazily validate their keys
Convert the *Key and keyPair properties on *PreKeyRecord to throwing
methods.

Since the usual constructor is strongly typed, these should only throw
when the serialized data is corrupted. But that is a possibility.
2024-08-20 14:54:56 -07:00
Jordan Rose
5e81e01a38 java: {Signed,Kyber}PreKeyRecord.getKeyPair throws InvalidKeyException
Since the usual constructor is strongly typed, this can only happen
when the serialized data is corrupted. But that is a possibility.
2024-08-20 14:54:46 -07:00
Jordan Rose
fbdb1be931 Write down some of the coding guidelines specific to the backup crate 2024-08-20 14:54:18 -07:00
Jordan Rose
85c1d635ca
backup: Remove unused Map and Contains traits
Even in Validate mode, we still need real maps to resolve IDs. The
HashMap/HashSet flexibility has moved to the *Data associated types of
the ReferencedTypes trait.
2024-08-20 14:53:56 -07:00
moiseev-signal
949760d2ae
keytrans: Introduce KeyTransparency struct as the crate's API entry point 2024-08-20 14:47:57 -07:00
Jordan Rose
9230db6f32
backup: Save ringerRecipientId field in GroupCall 2024-08-20 14:23:17 -07:00
Jordan Rose
dac493f13a
backup: Resolve RecipientIds in reactions, OutgoingSend status, and quotes 2024-08-20 12:15:31 -07:00
moiseev-signal
0f8591f563
CI: Fix slow tests 2024-08-20 12:11:11 -07:00
moiseev-signal
a578ffb626
net: Add test-support cargo feature 2024-08-19 13:42:13 -07:00
Alex Konradi
511aab9c2d
Remove Arc::clone calls on the polling path 2024-08-19 16:19:52 -04:00
Jordan Rose
269a696a1d backup: Validate groups 2024-08-19 12:56:17 -07:00
Jordan Rose
9f6ceee6dd backup: Move GroupData-related processing to a new file 2024-08-19 12:56:17 -07:00
Jordan Rose
c1551667ec backup: Reference libsignal_core directly 2024-08-19 12:56:17 -07:00
Jordan Rose
31001cdfb2 libsignal_core: Expose WrongKindOfServiceIdError 2024-08-19 12:56:17 -07:00
Alex Konradi
b43932b399
Rename "reconnect" libsignal-net types 2024-08-16 17:31:12 -04:00
Alex Konradi
7344720775
noise: use fixed-size client & server keys 2024-08-16 17:20:07 -04:00
Alex Konradi
c2a66fc3d2
Noise stream
Add a wrapper around a block-based transport that encrypts and decrypts using 
an established Noise connection. Add a handshaker that establishes an encrypted 
Noise connection using the server-defined protocol. Implement the block-based 
transport trait on top of a websocket connection.

Co-authored-by: Jordan Rose <jrose@signal.org>
2024-08-16 16:50:42 -04:00
gram-signal
2fd3b19283
SVR - implement new protocol client restore logic and test it 2024-08-16 12:55:59 -07:00
Jordan Rose
a36a554fef backup: Serialize CustomColorMap *as* a (sorted) map 2024-08-16 11:58:14 -07:00
Jordan Rose
f1b93b508d backup: Sort group invitees when serializing 2024-08-16 11:58:14 -07:00
Jordan Rose
52912c7c75 backup: Sort OutgoingSend records when serializing 2024-08-16 11:58:14 -07:00
Jordan Rose
fe864ec139 backup: Sort text ranges when serializing 2024-08-16 11:58:14 -07:00
gram-signal
7d87f692ba
SVR - initial methods for generating Create requests for new backup protocol. 2024-08-16 09:15:38 -07:00
Alex Konradi
d5ba8b1947
Don't parse mp4san or webpsan with cbindgen 2024-08-14 15:10:10 -04:00
Alex Konradi
f89e616a4c
Run cargo clean with same toolchain 2024-08-14 13:03:02 -04:00
Jordan Rose
1c06569d2f backup: Update Backup.proto 2024-08-14 09:16:38 -07:00
Alex Konradi
8cec4c19c7
Inline some named unit test utility functions 2024-08-14 11:57:07 -04:00
Alex Konradi
7c8a3e957d
java: include unexpected exception name in message 2024-08-13 14:05:59 -04:00
moiseev-signal
9a6898a136
keytrans: Prefer expect() to unwrap() and more code deduplication 2024-08-13 10:59:07 -07:00
Jordan Rose
360b335cff Bump to version v0.55.1 2024-08-13 09:52:44 -07:00
Jordan Rose
d2919ea461 backup: Update Backup.proto
Major changes to SendStatus, minor changes elsewhere.
2024-08-12 16:25:08 -07:00
Jordan Rose
d44fdc92ca backup: Canonicalize Timestamps and Durations as milliseconds
This is closer to the raw value used for most protobuf fields, and
avoids printing as an object containing secs+nsecs.
2024-08-12 13:54:32 -07:00