curl_easy_cleanup (3) - Linux Manuals

curl_easy_cleanup: End a libcurl easy session


curl_easy_cleanup - End a libcurl easy session


#include <curl/curl.h>

void curl_easy_cleanup(CURL *handle);


This function must be the last function to call for an easy session. It is the opposite of the curl_easy_init(3) function and must be called with the same handle as input that the curl_easy_init call returned.

This will effectively close all connections this handle has used and possibly has kept open until now. Don't call this function if you intend to transfer more files.

Occasionally you may get your progress callback or header callback called from within curl_easy_cleanup(3) (if previously set for the handle using curl_easy_setopt(3)). Like if libcurl decides to shut down the connection and the protocol is of a kind that requires a command/response sequence before disconnect. Examples of such protocols are FTP, POP3 and IMAP.

Any uses of the handle after this function has been called and have returned, are illegal. This kills the handle and all memory associated with it!

With libcurl versions prior to 7.17.: when you've called this, you can safely remove all the strings you've previously told libcurl to use, as it won't use them anymore now.