Commit Graph

219 Commits

Author SHA1 Message Date
Pete Walters
3af50ddfd3
Add basic support for QuickRestore 2025-03-31 13:02:44 -05:00
Pete Walters
b82d49478d
Refactor device provisioning 2025-03-31 11:24:51 -05:00
Max Radermacher
9fa8f99629
Fix race condition with “empty queue” notification 2025-03-22 00:02:27 -05:00
sashaweiss-signal
3c79403c27 Put DeviceId uint32Value into request parameters, not the Swift type 2025-03-21 18:10:01 -07:00
Sasha Weiss
1a5cbd9183
Rename postNotificationNameAsync to postOnMainThread 2025-03-21 15:28:35 -07:00
Sasha Weiss
be619eb10b
Make DBWriteTransaction only take sync completions 2025-03-21 15:27:42 -07:00
Max Radermacher
293d981c84
Remove AuthedDevice.DeviceId enum 2025-03-21 17:02:15 -05:00
Max Radermacher
279a11f742
Add DeviceId type 2025-03-21 16:49:38 -05:00
Max Radermacher
10cb6f69f7
Use HttpHeaders in more places 2025-03-21 13:53:38 -05:00
Max Radermacher
8029e258f7
Rename OWSHttpHeaders → HttpHeaders 2025-03-21 13:52:25 -05:00
Max Radermacher
5e5b9f92c4
Convert OWSHttpHeaders to a struct 2025-03-21 13:28:13 -05:00
Max Radermacher
ba107e5f33
Remove unused capabilities 2025-03-20 00:11:10 -05:00
Ehren Kret
d71f61ee35 fix warnings 2025-03-14 10:33:20 -05:00
Sasha Weiss
bb048e8b59
One transaction type to rule them all and in the darkness bind them 2025-03-13 21:43:35 -07:00
Sasha Weiss
e5eabf1110
Remove GRDBTransaction extensions for accessing Database 2025-03-13 21:39:23 -07:00
Sasha Weiss
047e3a38df
Clean up SDSAnyWriteTransaction async completion 2025-03-13 21:38:21 -07:00
Max Radermacher
95c18efb2d
Consolidate TSRequest auth into a single type 2025-03-13 13:35:35 -05:00
Jordan Rose
46346d17d9 Revert "Mitigate unidentified connection assertion"
This reverts commit f93be49c1a
now that the libsignal bug has been addressed.
2025-03-12 16:09:26 -07:00
Max Radermacher
f93be49c1a
Mitigate unidentified connection assertion 2025-03-12 09:01:38 -05:00
Jordan Rose
647b715263 Report networkDidChange event to libsignal even when in the background
...or during app start
2025-03-11 17:07:44 -07:00
Jordan Rose
ced06cb832 Update to libsignal v0.67.4, stub out server alert support 2025-03-11 16:49:30 -07:00
Max Radermacher
97e631aea8
improve regional networking options 2025-03-11 18:03:32 -05:00
andrew-signal
9c983aeb7a
Update invalid configuration 2025-03-11 15:56:20 -04:00
Max Radermacher
265b45d6e1
Wait for the socket to open in more cases 2025-03-10 13:52:49 -05:00
Max Radermacher
6abe506cb0
Asyncify fetchLocalUsersProfile 2025-03-10 13:51:00 -05:00
Max Radermacher
ff8f0c1cdd
Remove various TSGroupThread return values 2025-03-07 15:56:35 -06:00
Max Radermacher
738ef16c3d Use web socket when fetching remote configs 2025-03-06 23:35:16 -06:00
Max Radermacher
56b5275f17
Remove unused versionedExpirationTimer capability 2025-03-06 23:31:39 -06:00
Max Radermacher
c2070943a5
Prefer infallible String → Data construct 2025-03-06 13:56:16 -06:00
Ehren Kret
2659f84403 convert giphyapi off of promises 2025-03-06 10:46:29 -06:00
Ehren Kret
c1adbe67ec
simplify promise code to swift concurrency 2025-03-05 11:35:10 -06:00
Max Radermacher
7171d79643
Rename content field to match the server’s name 2025-03-05 11:26:14 -06:00
Jordan Rose
14e4552633 Remove OWSChatConnectionWithLibSignalShadowing 2025-03-04 17:05:15 -08:00
Jordan Rose
70f5d2897f Treat kCFProxyTypeHTTPS as "proxy for https" rather than "using https" 2025-02-26 10:08:44 -08:00
Jordan Rose
3d0963cfbf Use new libsignal connect logic for CDS (again)
This was turned on implicitly in libsignal v0.65.3, but was discovered
to have issues. Those issues should now be fixed, but this time we
have a RemoteConfig kill switch in case there are more. That kill
switch also needs to control the use of system proxies (cf. 1f6fea1a).
2025-02-25 11:30:52 -08:00
Jordan Rose
c536cfe2f9 Update to libsignal v0.67.0 2025-02-25 11:30:52 -08:00
Jordan Rose
1f6fea1a77 For now, don't pass system proxy settings to libsignal 2025-02-24 13:30:00 -08:00
Pete Walters
1b7caa8ce9
Split out various key managment methods into AccountKeyStore 2025-02-24 10:12:47 -06:00
Pete Walters
4af636e7bb
Add OWI header to AccountAttributes request 2025-02-14 15:26:10 -06:00
Pete Walters
1bfd579dd3
Asyncify device linking
Co-authored-by: Max Radermacher <max@signal.org>
2025-02-14 13:04:50 -06:00
Max Radermacher
011f005cf0
Clean up auth types for story/group messages 2025-02-11 14:42:21 -06:00
Max Radermacher
23f0d543ac
Remove handling for unsupported messages 2025-02-11 14:32:26 -06:00
Pete Walters
9c84b751d3
Split SVRKeyDeriver pieces into MasterKey + SVRLocalStorage 2025-02-11 09:25:00 -06:00
Ehren Kret
4fd36fdd79 remove unused objc compat in OWSURLSession 2025-02-10 10:44:16 -06:00
Ehren Kret
8801a0d7e6 remove unused objc compat class OWSSignalServiceObjC 2025-02-10 10:38:08 -06:00
Ehren Kret
826981490f remove unused objc compat on OWSChatConnection 2025-02-10 09:08:48 -06:00
Jordan Rose
61836a5f4f Include StorageService.networkError in isNetworkFailureOrTimeout
And remove the statusCode payload that was never getting set.
2025-02-07 12:26:49 -08:00
Jordan Rose
affc97380f OWSChatConnection: Make regular /v1/keepalive requests for auth chat
This is for parity with the other clients, which use /v1/keepalive
instead of just websocket pings. For authenticated connections, the
server uses these requests to do some consistency checks.

I've only implemented it for OWSAuthConnectionUsingLibSignal; it could
be backported to OWSChatConnectionUsingSSKWebSocket, but we've gone
without it for long enough that it won't hurt to pick it up as part of
the switchover.
2025-02-07 12:25:48 -08:00
Jordan Rose
8e5aa130ae OWSChatConnection: Cancel in-progress libsignal connects on disconnect 2025-02-07 12:25:32 -08:00
Ehren Kret
83b37e74a3 remove unused objc compat 2025-02-07 05:30:56 -06:00