Jordan Rose
1661eb780b
OWSChatConnectionUsingLibsignal: Add proxy support
2024-05-31 12:24:51 -07:00
Adam Sharp
c675ec09c7
Resolve designated initializer warnings in SignalServiceKit
2024-05-28 10:47:15 -04:00
Adam Sharp
f245dcc2d7
Address unused variable warnings in SignalServiceKit
2024-05-22 12:04:52 -04:00
Jordan Rose
0ac5558493
Move libsignal-net proxy handling into SignalProxy
...
Since this already affects more than just the chat connection, having
it in OWSChatConnection isn't really the best choice. This way we can
be sure the libsignal Net instance's proxy settings will be updated
before any notifications go out.
2024-05-17 16:20:13 -07:00
Jordan Rose
9defb935a0
0 is not a valid TLS proxy port
2024-05-17 16:20:13 -07:00
Max Radermacher
3526c2b650
Remove unused canBuildWebSocket
2024-05-17 13:53:08 -05:00
Sasha Weiss
47c6f80c27
Track which field is missing in SDSError.missingRequiredField
2024-05-16 12:38:13 -07:00
Jordan Rose
6363dc07d1
OWSChatConnectionUsingLibSignal: 7a396ba9f, again
2024-05-13 10:18:08 -07:00
Jordan Rose
401d55d751
OWSChatConnection: Handle TLS proxies for libsignal shadowing
2024-05-03 17:36:29 -07:00
Max Radermacher
1ceab3701a
Remove unused tld property
2024-05-03 12:46:10 -05:00
Max Radermacher
6f4fbd37cb
Fetch profiles in the NSE
2024-05-02 15:32:14 -05:00
Jordan Rose
7e98708fdd
Revert "OWSChatConnection: disable shadowing requests under CC"
...
libsignal 0.45.1 makes this work correctly.
This reverts commit f78a4dfaa5 .
2024-05-02 10:57:55 -07:00
Pete Walters
49608a64e6
Add backup download
...
Co-authored-by: Harry <109690906+harry-signal@users.noreply.github.com>
2024-04-30 17:09:31 -05:00
Jordan Rose
4a0879eb78
Add OWSChatConnectionUsingLibsignal
...
The choice of whether or not to use this is controlled by a
RemoteConfig flag, ios.experimentalTransportEnabled.libsignal, but
because ChatConnectionManager is set up before RemoteConfig has even
loaded its cached settings, the flag is cached in UserDefaults, like
the shadowing kill switch setting.
2024-04-26 13:13:48 -07:00
Pete Walters
5bc53062c6
Request backup auth credentials and make initial requests.
2024-04-26 09:40:42 -05:00
Sasha Weiss
c26ad8a4e5
Add an "inactive linked device" megaphone
2024-04-24 11:28:33 -07:00
Jordan Rose
f78a4dfaa5
OWSChatConnection: disable shadowing requests under CC
...
The previous comment describes the planned behavior, but it isn't
actually working yet.
2024-04-22 10:01:13 -07:00
Jordan Rose
4afddfe93d
Add a RemoteConfig flag to turn off libsignal unauth request shadowing
...
It's not likely we'll need this, but just in case.
2024-04-22 10:00:54 -07:00
Jordan Rose
c3da50e5d5
OWSChatConnection: Bump the libsignal shadowing timeout to 3sec
...
Most requests on good networks happen well under 2sec, but there have
been a few timeouts that seem spurious (distinct from a series of
timeouts all happening in a row on the libsignal websocket).
2024-04-22 09:49:58 -07:00
Max Radermacher
a241f40621
Fix a few build warnings
2024-04-17 19:11:13 -05:00
Max Radermacher
e9cdafcff4
Format sender certificate parameters correctly
2024-04-17 17:40:56 -05:00
Alex Konradi
923314a147
Request new ZKC-based auth credential
2024-04-16 11:54:14 -04:00
Max Radermacher
7b4598480b
Remove unused includeUuid query parameter
2024-04-15 16:18:50 -05:00
Ehren Kret
fd94424be0
start migrating MIMETypeUtil to swift
2024-04-11 22:19:16 -05:00
Jordan Rose
582254c51a
For testing, allow TLS proxies to use TCP for the outer connection
...
Invoke this non-recommended mode with URL username syntax of
"UNENCRYPTED_FOR_TESTING@my-proxy.net" (or more likely
"UNENCRYPTED_FOR_TESTING@my-dev-machine.local"). The connection to the
Signal servers is still secured by TLS; it's only the outer connection
from the client to the proxy that's now unauthenticated.
2024-04-11 17:08:19 -07:00
Jordan Rose
68901267fd
OWSChatConnection: Improve shadowing logs
...
...mainly by including the original request ID, so they can be
correlated better.
2024-04-11 16:51:01 -07:00
Max Radermacher
7a396ba9f7
Fix malformed request errors for long URLs
2024-04-05 20:05:17 -05:00
Jordan Rose
e8eed60d35
Shadow successful unauth chat requests with a libsignal request
...
This will help identify scenarios where libsignal is deficient
compared to the current implementation.
2024-04-04 14:43:31 -07:00
Jordan Rose
32612376a9
OWSChatConnection: micro-optimization
2024-04-04 14:43:31 -07:00
Jordan Rose
70b3e6542b
OWSChatConnection: remove unused variable
2024-04-04 14:43:31 -07:00
Jordan Rose
832fd61c82
OWSChatConnection: Simplify/consolidate request building
2024-04-04 14:43:31 -07:00
Jordan Rose
b0de59f2e2
Remove required from every init that is not dynamically dispatched
...
This included:
- Removing unavailable inits wholesale if no longer `required`
- Marking a few classes `final` so they could continue using
`Self(...)` rather than `OWSWhatever(...)`
2024-04-01 15:27:20 -07:00
adel-signal
eeb0658bb1
calling: update 1:1 calls to use new calling/relays endpoint
2024-03-28 10:59:08 -07:00
Jordan Rose
8f3b28c09c
OWSChatConnection: percent-encode websocket request paths
...
The server decodes percent-escapes within these paths, so we should
leave them encoded, as URL provides by default.
2024-03-28 10:45:17 -07:00
Harry
b8c55601dd
Update a few simple callsites to use PreparedOutgoingMessage
2024-03-28 10:37:00 -07:00
Jordan Rose
3df4d465fe
Remove AtomicLock; it was just a simple wrapper around UnfairLock
2024-03-27 10:57:32 -07:00
Jordan Rose
2727a70b90
Make AtomicValue's lock-sharing explicit
...
Also:
- Remove AtomicUInt's @objc, it's no longer used from ObjC
- Remove Codable conformances, they would implicitly use shared locks
and weren't used in practice
2024-03-27 10:57:32 -07:00
Max Radermacher
0d8166682d
Run clang-format on SignalServiceKit/ files
2024-03-27 12:27:06 -05:00
Max Radermacher
e10faa8593
Remove src/ prefix from SignalServiceKit files
2024-03-27 12:22:52 -05:00