curl and libcurl is a tool for transferring files using URL syntax. It supports HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP, POP3, IMAP, SMTP, RTSP, RTMP, 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 about 40 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


Release Notes: This release adds agent-based authentication for SSH, allows applications to set sockopt after the accept() call with CURLSOCKTYPE_ACCEPT for FTP's active connection, adds a curl_multi_wait() function, lets metalink use the Microsoft Windows CryptoAPI, makes libcurl treat "socks://x" as a socks4 proxy, and lets the socks proxy handler support IPv6 connections through SOCKSv5 proxies. At least 37 bugs have been fixed.


Release Notes: This release fixes two security problems, adds CURLOPT_DNS_SERVERS and CURLOPT_ACCEPTTIMEOUT_MS, and fixes at least 54 documented bugs.


Release Notes: Several improvements and various bugfixes were made.


Release Notes: A security bug regarding inappropriate GSSAPI delegation was fixed. Other minor fixes were also done.


Release Notes: GOPHER support was added. 38 bugs were fixed, including a security vulnerability.
Recent comments
22 Aug 2012 03:58
Can't live without curl :)
28 May 2003 19:29
Curl 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. :-)
24 Jan 2002 21:27
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.
09 Jan 2002 03:42
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 (curl.haxx.se/q/)