cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: On resetting cookie "engine" and curl connections

From: Daniel Stenberg <daniel-curl_at_haxx.se>
Date: Tue, 11 Oct 2005 13:27:46 +0200 (CEST)

On Tue, 11 Oct 2005, Roberto Nibali wrote:

> if (reset_cookie) {
> curl_easy_setopt(curl, CURLOPT_COOKIELIST, "ALL");
> curl_easy_setopt(curl, CURLOPT_COOKIEFILE, "");
> }

Yes, this seems like the correct approach to clear all existing cookies and
make the cookie engine enabled.

> if (reset_handle) {
> curl_easy_setopt(curl, CURLOPT_FRESH_CONNECT, 1);
> }
> }
>
> And reset_handle should actually simulate a browser that opens a new channel
> or more.
>
> Reading the libcurl documentation this kind of stroke me as the most correct
> way of doing it. However I still like to ask if my assumptions are correct.
> Especially if the CURLOPT_FRESH_CONNECT really closes all "cached" open
> connections?

No. There's actually no way to enforce a closure of all open connections
without doing curl_easy_cleanup(). Not even curl_easy_reset() does that.

CURLOPT_FRESH_CONNECT simply makes the next request to use a new connection
(and thus prevents it from re-using an existing one). It will not affect the
existing ones (unless it needs to close a connection to make room for the new
one in the connection cache).

-- 
  Commercial curl and libcurl Technical Support: http://haxx.se/curl.html
Received on 2005-10-11