.\" $Id$ .\" .TH curl_easy_init 3 "4 March 2002" "libcurl 7.8.1" "libcurl Manual" .SH NAME curl_easy_init - Start a libcurl easy session .SH SYNOPSIS .B #include .BI "CURL *curl_easy_init( );" .SH DESCRIPTION This function must be the first function to call, and it returns a CURL easy handle that you must use as input to other easy-functions. curl_easy_init initializes curl and this call \fBMUST\fP have a corresponding call to \fIcurl_easy_cleanup(3)\fP when the operation is complete. If you did not already call \fIcurl_global_init(3)\fP, it will be done automatically with a default setup when you call \fIcurl_easy_init(3)\fP. This may be lethal in multi-threaded cases, since \fIcurl_global_init(3)\fP is not thread-safe and must not be called more than once (or from more than one thread). You are strongly adviced to not rely on this automatic behaviour, but call \fIcurl_global_init(3)\fP yourself properly. .SH RETURN VALUE If this function returns NULL, something went wrong and you cannot use the other curl functions. .SH "SEE ALSO" .BR curl_easy_cleanup "(3), " curl_global_init "(3), " curl_easy_reset "(3)"