curl\_easy\_reset(3) Library Functions Manual curl\_easy\_reset(3)

# [NAME](#NAME)

curl\_easy\_reset - reset all options of a libcurl session handle

# [SYNOPSIS](#SYNOPSIS)

```
#include <curl/curl.h>
void curl_easy_reset(CURL *handle);
```

# [DESCRIPTION](#DESCRIPTION)

Re-initializes all options previously set on a specified curl handle to the default values. This puts back the handle to the same state as it was in when it was created with [*curl\_easy\_init(3)*](/man/os/curl/curl_easy_init.3).

It does not change the following information kept in the handle: live connections, the Session ID cache, the DNS cache, the cookies, the shares or the alt-svc cache.

# [PROTOCOLS](#PROTOCOLS)

This functionality affects all supported protocols

# [EXAMPLE](#EXAMPLE)

```
int main(void)
{


  CURL *curl = curl_easy_init();


  if(curl) {


    /* ... the handle is used and options are set ... */


    curl_easy_reset(curl);


  }
}
```

# [AVAILABILITY](#AVAILABILITY)

Added in curl 7.12.1

# [RETURN VALUE](#RETURN_VALUE)

Nothing

# [SEE ALSO](#SEE_ALSO)

[**curl\_easy\_cleanup**(3)](/man/os/curl/curl_easy_cleanup.3), [**curl\_easy\_duphandle**(3)](/man/os/curl/curl_easy_duphandle.3), [**curl\_easy\_init**(3)](/man/os/curl/curl_easy_init.3), [**curl\_easy\_setopt**(3)](/man/os/curl/curl_easy_setopt.3)

2026-10-22 libcurl

---

Document: curl_easy_reset(3) from curl 8.23.0-r2 (Chainguard OS)
Source: https://github.com/curl/curl.git
