curl and libcurl is a tool for transferring files using URL syntax. It supports HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP, and FILE, as well as HTTP-post, HTTP-put, cookies, FTP upload, resumed transfers, passwords, port numbers, SSL certificates, Kerberos, and proxies. It is powered by libcurl, the client-side URL transfer library. There are bindings to libcurl for over 30 languages and environments.
| Tags | Internet Web FTP Software Development Libraries Networking |
|---|---|
| Licenses | MIT/X |
| Operating Systems | Windows Windows POSIX OS/2 BeOS Unix Mac OS X |
| Implementation | C |
Recent releases


Changes: A couple of minor changes were made and almost 30 bugs were fixed.


Changes: A security fix was made for the problem reported by CVE-2009-0037. CURLOPT_NOPROXY, CURLOPT_TFTP_BLKSIZE, CURLOPT_SOCKS5_GSSAPI_SERVICE, CURLOPT_SOCKS5_GSSAPI_NEC, CURLPROXY_HTTP_1_0, CURLINFO_CONDITION_UNMET, CURLOPT_REDIR_PROTOCOLS, and CURLOPT_PROTOCOLS were added. Digest and NTLM authentication are supported by using GnuTLS. Some 15 bugs were fixed.


Changes: This release adds CURLAUTH_DIGEST_IE and vc9 makefiles and has around 30 bugfixes.


Changes: Three added regressions in 7.19.1 have been fixed: a build failure when using the MSVC 6 makefile, a crash when using --interface name on Linux, and multi interface downloading HTTPS pages with libcurl built powered by OpenSSL.


Changes: CURLOPT_CERTINFO, CURLINFO_CERTINFO, CURLOPT_POSTREDIR, CURLOPT_USERNAME, CURLOPT_PASSWORD, CURLOPT_PROXYUSERNAME, and CURLOPT_PROXYPASSWORD were added. 24 bugs were fixed.
- All comments
Recent commentsCurl helps to fight spam as well!
I discovered Curl tonight. I was looking for a solution for forms that used POST to submit an email address for unlisting from a spammer's "marketing" list. *chuckle* Forms that use GET are easy enough to script with bash and wget. POST presented a different problem. Curl solved it for me. With a small amount of bash shell scripting I've managed to seed my list of roughly 4400 spamtrap addresses 31 times. That's well over 100,000 seeded spamtraps! Kudos to the Curl developers for this unintentional but useful trick with Curl. :-)
Nice work there
I haven't used it much, but the program is definitely quite good - I have managed to continue several interrupted downloads and with much less hassle than with "wget".
The documented return codes, and the ability to resume a download independent of the target filename, also make it much more suitable for use as a component of another program (eg graphical download frontend). This is the sort of functionality that programs such as this should strive for! Flexibility and good documentation is a must and curl has both.
Finally, the library seems to be very flexible and the documentation is quite reasonable.
give us your view of things
We're now running a questionnaire about the curl project. What to do and what not to do. Bring us your view and opinions:
questionnaire (http://curl.haxx.se/q/)