Lines Matching full:curl
10 1.1 What is cURL?
12 1.3 What is curl not?
13 1.4 When will you make curl do XXXX ?
14 1.5 Who makes curl?
15 1.6 What do you get for making curl?
16 1.7 What about CURL from curl.com?
18 1.9 Where do I buy commercial support for curl?
19 1.10 How many are using curl?
22 1.13 curl's ECCN number?
28 2.2 Does curl work/build with other SSL libraries?
29 2.3 How do I upgrade curl.exe in Windows?
30 2.4 Does curl support SOCKS (RFC 1928) ?
33 3.1 curl: (1) SSL is disabled, https: not supported
34 3.2 How do I tell curl to resume a transfer?
36 3.4 How do I tell curl to run custom FTP commands?
38 3.6 Does curl support ASP, XML, XHTML or HTML version Y?
39 3.7 Can I use curl to delete/rename a file through FTP?
40 3.8 How do I tell curl to follow HTTP redirects?
41 3.9 How do I use curl in my favorite programming language?
46 3.14 Does curl support JavaScript or PAC (automated proxy config)?
47 3.15 Can I do recursive fetches with curl?
50 3.18 Can I use curl to send a POST/PUT and not wait for a response?
54 3.22 curl -X gives me HTTP problems
68 4.7 How do I keep user names and passwords secret in curl command lines?
70 4.9 curl cannot authenticate to a server that requires NTLM?
74 4.13 Why is curl -R on Windows one hour off?
75 4.14 Redirects work in browser but not with curl
80 4.19 Why does not curl return an error when the network cable is unplugged?
81 4.20 curl does not return error for HTTP non-200 responses
108 6.5 Can I modify curl/libcurl for my program and keep the changes secret?
109 6.6 Can you please change the curl/libcurl license to XXXX?
112 7. PHP/CURL Issues
113 7.1 What is PHP/CURL?
114 7.2 Who wrote PHP/CURL?
116 7.4 Does PHP/CURL have dependencies?
119 8.1 Why does curl use C89?
120 8.2 Will curl be rewritten?
126 1.1 What is cURL?
128 cURL is the name of the project. The name is a play on 'Client for URLs',
132 version: "curl URL Request Library".
134 The cURL project produces two products:
156 curl
160 Since curl uses libcurl, curl supports the same wide range of common
163 We pronounce curl with an initial k sound. It rhymes with words like girl
169 curl in the project names in various combinations, but you should take
170 notice that this FAQ is directed at the command-line tool named curl (and
171 libcurl the library), and may therefore not be valid for other curl-related
172 projects. (There is however a small section for the PHP/CURL in this FAQ.)
186 1.3 What is curl not?
188 curl is not a wget clone. That is a common misconception. Never, during
189 curl's development, have we intended curl to replace wget or compete on its
190 market. curl is targeted at single-shot file transfers.
192 curl is not a website mirroring program. If you want to use curl to mirror
193 something: fine, go ahead and write a script that wraps around curl or use
196 curl is not an FTP site mirroring program. Sure, get and send FTP with curl
200 curl is not a PHP tool, even though it works perfectly well when used from
201 or with PHP (when using the PHP/CURL module).
203 curl is not a program for a single operating system. curl exists, compiles,
208 1.4 When will you make curl do XXXX ?
210 We love suggestions of what to change in order to make curl and libcurl
212 curl:
214 curl -- the command line tool -- is to remain a non-graphical command line
218 We do not add things to curl that other small and available tools already do
219 well at the side. curl's output can be piped into another program or
223 magic with the supported protocols than curl currently does, chances are
228 considerable time already on maintaining and developing curl. In order to
231 https://github.com/curl/curl, fork the project, and create pull requests
234 If you write the code, chances are better that it will get into curl faster.
236 1.5 Who makes curl?
238 curl and libcurl are not made by any single individual. Daniel Stenberg is
246 curl is developed by a community, with Daniel at the wheel.
248 1.6 What do you get for making curl?
250 Project cURL is entirely free and open. We do this voluntarily, mostly in
251 our spare time. Companies may pay individual developers to work on curl.
252 This is not controlled by nor supervised in any way by the curl project.
256 tracker at https://github.com/curl/curl. Also again, some companies have
263 See also: https://curl.se/sponsors.html
265 1.7 What about CURL from curl.com?
267 During the summer of 2001, curl.com was busy advertising their client-side
268 programming language for the web, named CURL.
270 We are in no way associated with curl.com or their CURL programming
273 Our project name curl has been in effective use since 1998. We were not the
274 first computer related project to use the name "curl" and do not claim any
277 We recognize that we will be living in parallel with curl.com and wish them
283 curl-related questions on a suitable mailing list. All available mailing
285 https://curl.se/mail/
287 Keeping curl-related questions and discussions on mailing lists allows
294 If you have found or simply suspect a security problem in curl or libcurl,
295 submit all the details at https://hackerone.one/curl. On there we keep the
301 Security issues can also be taking to the curl security team by emailing
302 security at curl.se (closed list of receivers, mails are not disclosed).
304 1.9 Where do I buy commercial support for curl?
306 curl is fully open source. It means you can hire any skilled engineer to fix
307 your curl-related problems.
309 We list available alternatives on the curl website:
310 https://curl.se/support.html
312 1.10 How many are using curl?
316 We do not know how many users that knowingly have installed and use curl.
318 We do not know how many users that use curl without knowing that they are in
321 We do not know how many users that downloaded or installed curl and then
324 In 2020, we estimate that curl runs in roughly ten billion installations
329 In the cURL project we have decided not to attempt to keep this file updated
337 be a lot better than a private curl version.
342 for this purpose: https://curl.se/docs/caextract.html
346 There is a bunch of friendly people hanging out in the #curl channel on the
350 1.13 curl's ECCN number?
359 We believe curl's number might be ECCN 5D002, another possibility is
375 "pull requests" on GitHub: https://github.com/curl/curl/pulls
378 the curl-library mailing list. We are many subscribers there and there are
419 2.2 Does curl work with other SSL libraries?
421 curl has been written to use a generic SSL function layer internally, and
425 curl can be built to use one of the following SSL alternatives: OpenSSL,
429 https://curl.se/docs/ssl-compared.html
431 2.3 How do I upgrade curl.exe in Windows?
433 The curl tool that is shipped as an integrated component of Windows 10 and
435 replace it with a newer version downloaded from https://curl.se/windows,
438 There is no way to independently force an upgrade of the curl.exe that is
440 is also nothing the curl project itself can do about this, since this is
444 You can always download and install the latest version of curl for Windows
445 from https://curl.se/windows into a separate location.
447 2.4 Does curl support SOCKS (RFC 1928) ?
453 3.1 curl: (1) SSL is disabled, https: not supported
456 means that the instance of curl/libcurl that you are using was built without
460 could not find all libs and include files curl requires for SSL to work. If
461 the configure script fails to find them, curl is simply built without SSL
464 To get HTTPS support into a curl that was previously built but that reports
472 3.2 How do I tell curl to resume a transfer?
474 curl supports resumed transfers both ways on both FTP and HTTP.
480 the HTTP operation you need curl to do and what the web server that will
494 3.4 How do I tell curl to run custom FTP commands?
496 You can tell curl to perform optional commands both before and/or after a
499 Since curl is used for file transfers, you do not normally use curl to
510 3.6 Does curl support ASP, XML, XHTML or HTML version Y?
512 To curl, all contents are alike. It does not matter how the page was
514 files. There is no difference to curl and it does not even know what kind of
519 3.7 Can I use curl to delete/rename a file through FTP?
525 curl -O ftp://example.com/coolfile -Q '-DELE coolfile'
529 curl -T infile ftp://example.com/dir/ -Q "-RNFR infile" -Q "-RNTO newname"
531 3.8 How do I tell curl to follow HTTP redirects?
533 curl does not follow so-called redirects by default. The Location: header
537 curl -L http://example.com
541 3.9 How do I use curl in my favorite programming language?
544 curl without having to use the command line tool. If you are fluent in such
547 Find out more about which languages that support curl directly, and how to
548 install and use them, in the libcurl section of the curl website:
549 https://curl.se/libcurl/
552 outside of the cURL project. The cURL project itself only produces libcurl
554 about bindings on the curl-library list too, but be prepared that people on
568 curl adheres to the HTTP spec, which basically means you can play with *any*
581 curl -d "datatopost" -H "Content-Type: text/xml" [URL]
600 curl -d " with spaces " example.com
604 curl -d ' with spaces ' example.com
614 because curl is not a powershell script. You may or may not be able to use
619 the curl docs will use a mix of both of these as shown above. You must
622 Remember that curl works and runs on more operating systems than most single
625 3.14 Does curl support JavaScript or PAC (automated proxy config)?
627 Many web pages do magic stuff using embedded JavaScript. curl and libcurl
634 the name of the proxy to connect to. Since curl does not support JavaScript,
649 3.15 Can I do recursive fetches with curl?
651 No. curl itself has no code that performs recursive operations, such as
656 it, but the command line tool curl itself cannot.
661 talk about using SSL-based protocols (HTTPS or FTPS) using curl or libcurl.
682 bundle. curl does not come with a CA cert bundle but most curl installs
687 certificate. Server certificate verification is enabled by default in curl
690 (https://curl.se/docs/sslcerts.html). Server certificates that are
701 curl ftp://ftp.example.com/%2ftmp/
706 curl ftp://ftp.example.com//tmp/
708 3.18 Can I use curl to send a POST/PUT and not wait for a response?
723 curl --header "Host: www.example.com" http://127.0.0.1/
725 You can also opt to add faked host name entries to curl with the --resolve
729 curl --resolve www.example.com:80:127.0.0.1 http://www.example.com/
740 curl -O -u user:password sftp://example.com/~/file.txt
744 curl -O -u user:password scp://example.com/~/file.txt
748 When passing on a URL to curl to use, it may respond that the particular
750 is phrased is because curl does not make a distinction internally of whether
752 knows how to speak that protocol) or if it was explicitly disabled. curl can
760 3.22 curl -X gives me HTTP problems
764 By default you use curl without explicitly saying which request method to
766 "curl http://example.com" it will use GET. If you use -d or -F curl will use
769 If for whatever reason you are not happy with these default choices that curl
771 [WHATEVER]. This way you can for example send a DELETE by doing "curl -X
774 It is thus pointless to do "curl -XGET [URL]" as GET would be used
775 anyway. In the same vein it is pointless to do "curl -X POST -d data
777 request-body in a GET request with something like "curl -X GET -d data
780 Note that -X does not actually change curl's behavior as it only modifies the
785 a 303 redirect, you will effectively prevent curl from behaving
801 curl 'http://www.example.com/cgi-bin/query?text=yes&q=curl'
814 a URL specified to curl you must quote them.
818 curl '{curl,www}.haxx.se'
821 them for the curl URL "globbing" system), use the -g/--globoff option:
823 curl -g 'www.example.com/weirdname[].html'
827 curl asks remote servers for the page you specify. If the page does not exist
832 By using the --fail option you can tell curl explicitly to not get any data
878 All curl error codes are described at the end of the man page, in the
882 that curl has exited due to a crash. This is a serious error, and we
886 4.7 How do I keep user names and passwords secret in curl command lines?
892 avoided by using the "-K" option to tell curl to read parameters from a file
893 or stdin to which you can pass the secret info. curl itself will also
898 not a task that curl addresses. You could of course encrypt them somehow to
920 4.9 curl cannot authenticate to a server that requires NTLM?
933 software you are trying to interact with. This is not anything curl can do
943 When you invoke curl and get an error 60 error back it means that curl
944 could not verify that the server's certificate was good. curl verifies the
959 fails in curl. When this happens, the reason is usually that the server
968 https://curl.se/docs/sslcerts.html
970 4.13 Why is curl -R on Windows one hour off?
972 Since curl 7.53.0 this issue should be fixed as long as curl was built with
974 compilers or prior curl versions it may set a time that appears one hour off.
979 4.14 Redirects work in browser but not with curl
981 curl supports HTTP redirects well (see item 3.8). Browsers generally support
982 at least two other ways to perform redirects that curl does not:
990 There is no way to make curl follow these redirects. You must either
996 curl supports FTPS (sometimes known as FTP-SSL) both implicit and explicit
999 When a URL is used that starts with FTPS://, curl assumes implicit SSL on
1035 anything else. This will make (lib)curl to consider the connection connected
1040 When using curl to try to download a local file, one might use a URL
1045 you will find that even if D:\blah.txt does exist, curl returns a 'file
1051 host component, and is taken away. Thus, curl tries to open '/blah.txt'.
1064 In either case, curl should now be looking for the correct file.
1066 4.19 Why does not curl return an error when the network cable is unplugged?
1078 for it to detect an issue. The curl option --keepalive-time enables
1085 do not use TCP. To handle those situations, curl offers a number of timeouts
1096 4.20 curl does not return error for HTTP non-200 responses
1100 When doing HTTP transfers, curl will perform exactly what you are asking it
1101 to do and if successful it will not return an error. You can use curl to
1107 curl. It simply sends and delivers HTTP as you asked and if that worked,
1109 higher level error information that curl does not care about. The error was
1114 message, curl has a dedicated option for that: -f (CURLOPT_FAILONERROR in
1133 https://curl.se/libcurl/c/threadsafe.html
1194 curl and libcurl have excellent support for persistent connections when
1195 transferring several files from the same server. curl will attempt to reuse
1363 curl -s ftp.funet.fi/pub/ -X MLSD | \
1366 curl -s ftp.kernel.org/pub/linux/kernel/ | \
1415 curl and libcurl are released under a MIT/X derivative license. The license
1451 6.5 Can I modify curl/libcurl for my program and keep the changes secret?
1459 6.6 Can you please change the curl/libcurl license to XXXX?
1466 we want on curl/libcurl and it does not spread to other programs or
1468 curl in their projects, no matter what license they already have in use.
1489 As can be seen here: https://curl.se/docs/companies.html and elsewhere,
1494 7. PHP/CURL Issues
1496 7.1 What is PHP/CURL?
1498 The module for PHP that makes it possible for PHP programs to access curl-
1501 In the cURL project we call this module PHP/CURL to differentiate it from
1502 curl the command line tool and libcurl the library. The PHP team however
1504 CURL (often using all caps) or sometimes ext/curl, but both cause much
1507 7.2 Who wrote PHP/CURL?
1509 PHP/CURL was initially written by Sterling Hughes.
1520 7.4 Does PHP/CURL have dependencies?
1522 PHP/CURL is a module that comes with the regular PHP package. It depends on
1524 PHP/CURL can be used.
1528 8.1 Why does curl use C89?
1530 As with everything in curl, there is a history and we keep using what we have
1545 8.2 Will curl be rewritten?
1550 Every now and then the urge apparently arises to request that we rewrite curl
1553 Some the most important properties in curl are maintaining the API and ABI