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