_ _ _ _ | (_) |__ ___ _ _ _ __| | | | | '_ \ / __| | | | '__| | | | | |_) | (__| |_| | | | | |_|_|_.__/ \___|\__,_|_| |_| How To Use Libcurl In Your Program Interfaces libcurl currently offers two different interfaces to the URL transfer engine. They can be seen as one low-level and one high-level, in the sense that the low-level one will allow you to deal with a lot more details but on the other hand not offer as many fancy features (such as Location: following). The high-level interface is supposed to be a built-in implementation of the low-level interface. You will not be able to mix function calls from the different layers. As we currently ONLY support the high-level interface, the so called easy interface, I will not attempt to describe any low-level functions at this point. Function descriptions The interface is meant to be very simple for very simple implementations. Thus, we have minimized the number of entries. Main Operations You INIT the lib You SET OPTIONS you want the lib to use. You tell the lib to PERFORM the transfer. You CLEAN UP the lib done. See the separate man pages for the libcurl functions for details. CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...); CURLcode curl_easy_perform(CURL *curl); void curl_easy_cleanup(CURL *curl);