Re: Network.framework and libcurl

Daniel Stenberg via curl-library <[email protected]>
Newsgroups gmane.comp.web.curl.library
Message-ID <[email protected]>
On Thu, 28 Aug 2025, Demi Marie Obenour wrote:

> To me, most of libcurl's functionality is in the higher levels of the stack: 
> the many protocols it supports, the HTTP redirect handling, the stable ABI 
> and API, and things like that.

In order to support the existing API, libcurl needs to control its engine. If 
we outsource all of DNS, TCP/QUIC connection and TLS/QUIC handshake to a black 
box we can't control, a huge amount of options can no longer work and a lot of 
behavior is going to be controlled by what Apple decides their magic functions 
should do.

In some cases that can be a good thing as then we could benefit from magic 
super powers Apple can do because they own the whole stack, but it would also 
prevent us from doing much of the magic we think benefits curl users. Like 
DoH, using c-ares, our happy eyeballs, our DNS cache, our resolve/connect-to 
tricks, h1/h2/h3 connection racing, HTTPS-RR records, ECH handling, unix 
domain sockets, several proxy setups etc. It might also cause 
blocking/non-blocking problems or challenges to do a massive amount of 
parallel transfers correctly - because of all the threads and blocking calls.

I might also be wrong and then someone can prove that with code and test 
cases. I rather not speak in terms of absolutes as what is "allowed" and "not 
allowed" but rather that it always depends on the exact specific details in 
every case, and until we have a proposal in front of us I rather use general 
terms.

-- 

  / daniel.haxx.se || https://rock-solid.curl.dev
-- 
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.