Re: multi interface with hsts cache

2023-05-29 Thread Dan Fandrich via curl-library
On Mon, May 29, 2023 at 11:41:04PM +0200, Przemysław Sobala via curl-library 
wrote:
> If I understand the documentation correctly, the HSTS cache is applied to each
> curl easy handle and it's read and written on each easy handle open and close
> action.
> I'd like to use the in-memory cache as reading and writing a cache file on
> every easy handle is redundant in my opinion and can slow down my service.
> 1. How can I configure the in-memory cache for easy handles in Multi 
> Interface?

You're probably looking for the share interface:
https://curl.se/libcurl/c/CURLSHOPT_SHARE.html
-- 
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html


multi interface with hsts cache

2023-05-29 Thread Przemysław Sobala via curl-library
Hello
I've been successfully using curl multi interface with libuv in my service
for 24/7 download requests. Now I want to benefit from caching HSTS
responses to reduce the number of HTTP->HTTPS redirects.
If I understand the documentation correctly, the HSTS cache is applied to
each curl easy handle and it's read and written on each easy handle open
and close action.
I'd like to use the in-memory cache as reading and writing a cache file on
every easy handle is redundant in my opinion and can slow down my service.
1. How can I configure the in-memory cache for easy handles in Multi
Interface? My tests show that setting CURLOPT_HSTS_CTRL option to
CURLHSTS_ENABLE  is not enough and only setting the cache file path will
bring the expected result.
2. Is it possible to populate the in-memory cache when my service starts,
operate on this cache (read & write) during download requests, and dump to
file when my service stops, so that it can be populated again on the next
restart?

--
Bez regards
Przemysław Sobala
-- 
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html


Re: CURLINFO_APPCONNECT_TIME_T in HTTP 2

2023-05-29 Thread Babacar Ndiaye via curl-library
We are using version 7.81.0.

I'll dig into this piece to see if that is what is happening:

"or if a new connection with the need to re-authenticate at the proxy is
done"

I didn't question the assumption it's cached. Thanks for pointing that out.


On Sat, May 27, 2023 at 6:14 AM Stefan Eissing via curl-library <
curl-library@lists.haxx.se> wrote:

> Addendum: I speak of a recent curl version. If you use an older libcurl,
> please state the version.
>
> > Am 27.05.2023 um 12:00 schrieb Stefan Eissing via curl-library <
> curl-library@lists.haxx.se>:
> >
> >
> >
> >> Am 26.05.2023 um 23:22 schrieb Babacar Ndiaye via curl-library <
> curl-library@lists.haxx.se>:
> >>
> >> Hi:
> >>
> >> The setup we have is TLS in TLS HTTPS with proxy client authentication.
> As suggested in the docs, we create one multi handler, keep it around to
> leverage the connection caching, and keep adding/removing easy handles to
> service the requests.
> >>
> >> When the transfer is done with HTTP 1.1, what I get out of
> CURLINFO_APPCONNECT_TIME_T with curl_easy_getinfo() makes sense to me.
> Since there is connection reuse, the average is low (100 microsec).
> >>
> >> Now when the transfer is done with HTTP 2, that average is big (200
> millisec). When I do it the other way, make/destroy one easy for each
> request, I get that same 200 millisec.
> >>
> >> Does CURLINFO_APPCONNECT_TIME_T mean the same thing for in HTTP 1.1 and
> 2?
> >
> > Yes, it is the time for handshaking the connection to the origin, not
> the proxy, server. It's the same code for both HTTP versions.
> >
> > The question is then if the connection gets reused in your setup as you
> think it should, or if a new connection with the need to re-authenticate at
> the proxy is done. That would be my suspicion here.
> >
> > Kind Regards,
> > Stefan
> >
> >
> >
> >>
> >> Thanks for your help.
> >> --
> >> Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
> >> Etiquette:   https://curl.se/mail/etiquette.html
> >
> > --
> > Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
> > Etiquette:   https://curl.se/mail/etiquette.html
>
>
> --
> Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
> Etiquette:   https://curl.se/mail/etiquette.html
>
-- 
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html