Page MenuHomePhabricator

[Tunnelbroker] implement creating APNs client
ClosedPublic

Authored by kamil on Jun 28 2024, 5:00 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Oct 18, 12:16 AM
Unknown Object (File)
Tue, Oct 15, 1:41 AM
Unknown Object (File)
Mon, Oct 14, 5:40 AM
Unknown Object (File)
Sun, Oct 13, 9:55 PM
Unknown Object (File)
Fri, Oct 11, 12:52 AM
Unknown Object (File)
Fri, Oct 11, 12:52 AM
Unknown Object (File)
Fri, Oct 11, 12:52 AM
Unknown Object (File)
Fri, Oct 11, 12:52 AM
Subscribers

Details

Summary

Implementing APNs client which will handle sending notifs.

After some research, I discovered that opening new connections for every request could be treated as a DoS attack. However, reqwest can handle that, if we use the same Client and when making a request it will use keep-alive connection pooling.

Depends on D12610

Test Plan

Test creating client with adding config args from command-line args.

Diff Detail

Repository
rCOMM Comm
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kamil held this revision as a draft.
kamil retitled this revision from [Tunnelbroker] implement creating APNs token to [Tunnelbroker] implement creating APNs client.Jun 28 2024, 5:01 AM
kamil edited the summary of this revision. (Show Details)
kamil published this revision for review.Jun 28 2024, 6:27 AM
kamil edited the summary of this revision. (Show Details)
kamil edited the test plan for this revision. (Show Details)
bartek added inline comments.
services/tunnelbroker/src/notifs/apns/mod.rs
20–24 ↗(On Diff #41789)

Are these requirements described anywhere in Apple docs?

This revision is now accepted and ready to land.Jul 1 2024, 2:13 AM
services/tunnelbroker/src/notifs/apns/mod.rs
20–24 ↗(On Diff #41789)

No, it's based on reqwest docs to force using only http2 - without this reqwest is using http and Apple rejects the request