Lines Matching +full:configure +full:- +full:no +full:- +full:proxy
20 1.11 Why do you not update ca-bundle.crt
27 2.1 configure fails when using static libraries
35 3.3 Why does my posting using -F not work?
42 3.10 What about SOAP, WebDAV, XML-RPC or similar protocols over HTTP?
43 3.11 How do I POST with a different Content-Type?
44 3.12 Why do FTP-specific features over HTTP proxy fail?
46 3.14 Does curl support JavaScript or PAC (automated proxy config)?
54 3.22 curl -X gives me HTTP problems
74 4.13 Why is curl -R on Windows one hour off?
78 4.17 Non-functional connect timeouts on Windows
81 4.20 curl does not return error for HTTP non-200 responses
84 5.1 Is libcurl thread-safe?
89 5.6 What about Keep-Alive or persistent connections?
91 5.8 libcurl.so.X: open failed: No such file or directory
97 5.14 Using C++ non-static functions for callbacks?
99 5.16 I want a different time-out
105 6.2 I have a closed-source program, can I use the libcurl library?
138 A client-side URL transfer library, supporting DICT, FILE, FTP, FTPS,
145 authentication, file transfer resume, http proxy tunneling and more.
148 platforms, including Solaris, NetBSD, FreeBSD, OpenBSD, Darwin, HP-UX,
153 libcurl is free, thread-safe, IPv6 compatible, feature rich, well
166 https://media.merriam-webster.com/soundc11/c/curl0001.wav
168 There are numerous sub-projects and related projects that also use the word
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
180 commercial or closed-source.
183 used C-based multi-platform file transfer library on this planet - be it
190 market. curl is targeted at single-shot file transfers.
214 curl -- the command line tool -- is to remain a non-graphical command line
260 If you want to support our project, consider a donation or a banner-program
267 During the summer of 2001, curl.com was busy advertising their client-side
270 We are in no way associated with curl.com or their CURL programming
283 curl-related questions on a suitable mailing list. All available mailing
287 Keeping curl-related questions and discussions on mailing lists allows
307 your curl-related problems.
327 1.11 Why do you not update ca-bundle.crt
332 Mozilla is perfectly fine so there is no need to duplicate that work.
341 Firefox (by running 'make ca-bundle), or by using our online service setup
348 you can get -- or provide -- help instantly.
370 https://www.bis.doc.gov/index.php/documents/new-encryption/1653-ccl5-pt2-3
378 the curl-library mailing list. We are many subscribers there and there are
387 Here's a rough step-by-step:
389 1. copy a suitable lib/config-*.h file as a start to lib/config-[youros].h
391 2. edit lib/config-[youros].h to match your OS and setup
393 3. edit lib/curl_setup.h to include config-[youros].h when your OS is
401 2.1 configure fails when using static libraries
403 You may find that configure fails to properly detect the entire dependency
405 configure checks for.
410 handled automatically). This is an error-prone process and one that also
414 For that reason, configure does few attempts to actually figure this out and
416 invoke configure, and point out the needed libraries and set the necessary
426 LibreSSL, BoringSSL, AWS-LC, GnuTLS, wolfSSL, mbedTLS, Secure Transport
429 https://curl.se/docs/ssl-compared.html
438 There is no way to independently force an upgrade of the curl.exe that is
459 This could have happened if the configure script that was run at build time
461 the configure script fails to find them, curl is simply built without SSL
466 and check out why the configure script does not find the SSL libs and/or
469 Also, check out the other paragraph in this FAQ labeled "configure does not
475 Try the -C option.
477 3.3 Why does my posting using -F not work?
479 You cannot arbitrarily use -F or -d, the choice between -F or -d depends on
483 If the form you are trying to submit uses the type 'multipart/form-data',
484 then and only then you must use the -F type. In all the most common cases,
485 you should use -d which then causes a posting with the type
486 'application/x-www-form-urlencoded'.
497 file transfer. Study the -Q/--quote option.
502 commands, or use -I which implies the "no body" option sent to libcurl.
507 the -H/--header option. By adding a header with empty contents you safely
508 disable that one. Use -H "Accept:" to disable that specific header.
513 generated. It may be ASP, PHP, Perl, shell-script, SSI or plain HTML
514 files. There is no difference to curl and it does not even know what kind of
521 Yes. You specify custom FTP commands with -Q/--quote.
525 curl -O ftp://example.com/coolfile -Q '-DELE coolfile'
529 curl -T infile ftp://example.com/dir/ -Q "-RNFR infile" -Q "-RNTO newname"
533 curl does not follow so-called redirects by default. The Location: header
535 -L/--location option. As in:
537 curl -L http://example.com
554 about bindings on the curl-library list too, but be prepared that people on
560 Java, Julia, Lisp, Lua, Mono, .NET, node.js, Object-Pascal, OCaml, Pascal,
562 Scilab, S-Lang, Smalltalk, SP-Forth, SPL, Tcl, Visual Basic, Visual FoxPro,
566 3.10 What about SOAP, WebDAV, XML-RPC or similar protocols over HTTP?
570 XML-RPC are all such ones. You can use -X to set custom requests and -H to
576 3.11 How do I POST with a different Content-Type?
578 You can always replace the internally generated headers with -H/--header.
579 To make a simple HTTP POST with text/xml as content-type, do something like:
581 curl -d "datatopost" -H "Content-Type: text/xml" [URL]
583 3.12 Why do FTP-specific features over HTTP proxy fail?
585 Because when you use an HTTP proxy, the protocol spoken on the network will
587 normally cannot use FTP-specific features such as FTP upload and FTP quote
591 the given HTTP proxy. Proxy tunneling is enabled with a special option (-p)
592 and is generally not available as proxy admins usually disable tunneling to
600 curl -d " with spaces " example.com
604 curl -d ' with spaces ' example.com
616 backslash-backtick escape sequence and the outer quotes as double quotes.
625 3.14 Does curl support JavaScript or PAC (automated proxy config)?
628 have no built-in support for that, so it will be treated just like any other
634 the name of the proxy to connect to. Since curl does not support JavaScript,
635 it cannot support .pac proxy configuration either.
647 Ask your admins to stop this, for a static proxy setup or similar.
651 No. curl itself has no code that performs recursive operations, such as
661 talk about using SSL-based protocols (HTTPS or FTPS) using curl or libcurl.
691 "self-signed" or otherwise signed by a CA that you do not have a CA cert
703 or the not-quite-kosher-but-more-readable way, by simply starting the path
710 No.
723 curl --header "Host: www.example.com" http://127.0.0.1/
725 You can also opt to add faked hostname 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
760 3.22 curl -X gives me HTTP problems
762 In normal circumstances, -X should hardly ever be used.
766 "curl http://example.com" it will use GET. If you use -d or -F curl will use
767 POST, -I will cause a HEAD and -T will make it a PUT.
770 does for you, you can override those request methods by specifying -X
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 anyway.
775 In the same vein it is pointless to do "curl -X POST -d data [URL]". You can
776 make a fun and somewhat rare request that sends a request-body in a GET
777 request with something like "curl -X GET -d data [URL]"
779 Note that -X does not actually change curl's behavior as it only modifies the
783 Accordingly, by using -XPOST on a command line that for example would follow
798 An example that would invoke a remote CGI that uses &-symbols could be:
800 curl 'http://www.example.com/cgi-bin/query?text=yes&q=curl'
807 using -d/--data you must encode it as '%25' (which then also needs the
820 them for the curl URL "globbing" system), use the -g/--globoff option:
822 curl -g 'www.example.com/weirdname[].html'
831 By using the --fail option you can tell curl explicitly to not get any data
855 The server has not found anything matching the Request-URI. No indication
860 The method specified in the Request-Line is not allowed for the resource
861 identified by the Request-URI. The response MUST include an Allow header
873 -L/--location option to follow the redirection.
889 The first part is to avoid having clear-text passwords in the command line
891 avoided by using the "-K" option to tell curl to read parameters from a file
893 attempt to "hide" the given password by blanking out the option - this
905 SSL-based alternatives HTTPS and FTPS.
922 Microsoft Windows libraries at build-time to provide this functionality.
947 To completely disable the certificate verification, use -k. This does
948 however enable man-in-the-middle attacks and makes the transfer INSECURE.
953 store. It might for example be self-signed. You then correct this problem by
969 4.13 Why is curl -R on Windows one hour off?
972 any modern compiler that allows for a 64-bit curl_off_t type. For older
976 https://www.codeproject.com/Articles/1144/Beating-the-Daylight-Savings-Time-bug-and-getting
989 There is no way to make curl follow these redirects. You must either
995 curl supports FTPS (sometimes known as FTP-SSL) both implicit and explicit
1002 To use explicit FTPS, you use an FTP:// URL and the --ssl-reqd option (or one
1010 request body) use the "Expect: 100-continue" header. This header allows the
1019 any header, using -H / CURLOPT_HTTPHEADER, or by forcing it to use HTTP 1.0.
1021 4.17 Non-functional connect timeouts
1023 In most Windows setups having a timeout longer than 21 seconds make no
1024 difference, as it will only send 3 TCP SYN packets and no more. The second
1026 the second. No more than three packets are sent, no matter how long the
1030 https://support.microsoft.com/en-us/kb/175523/en-us
1032 Also, even on non-Windows systems there may run a firewall or anti-virus
1071 re-routed around the physical problem through another path.
1077 for it to detect an issue. The curl option --keepalive-time enables
1078 keep-alive support in the TCP/IP stack which makes it periodically probe the
1085 on its own. --speed-limit/--speed-time will abort if the data transfer rate
1086 falls too low, and --connect-timeout and --max-time can be used to put an
1089 A libcurl-using application running in a known physical environment (e.g.
1093 OS-specific mechanism, then signaling libcurl to abort (see also item 5.13).
1095 4.20 curl does not return error for HTTP non-200 responses
1097 Correct. Unless you use -f (--fail).
1112 as errors and thus return a non-zero value and possibly show an error
1113 message, curl has a dedicated option for that: -f (CURLOPT_FAILONERROR in
1116 You can also use the -w option and the variable %{response_code} to extract
1121 5.1 Is libcurl thread-safe?
1125 We have written the libcurl code specifically adjusted for multi-threaded
1126 programs. libcurl will use thread-safe functions instead of non-safe ones if
1160 mem->memory = (char *)realloc(mem->memory, mem->size + realsize + 1);
1161 if (mem->memory) {
1162 memcpy(&(mem->memory[mem->size]), ptr, realsize);
1163 mem->size += realsize;
1164 mem->memory[mem->size] = 0;
1191 5.6 What about Keep-Alive or persistent connections?
1215 add -DCURL_STATICLIB to your CFLAGS. Otherwise the linker will look for
1226 -----------------------------------------------------------
1232 5.8 libcurl.so.X: open failed: No such file or directory
1243 * Add an option to the linker command line that specify the hard-coded path
1244 the runtime linker should check for the lib (usually -R)
1257 picked at build-time and will be used unconditionally. Thus, if you want to
1261 - The non-IPv6 resolver that can use one of four different hostname resolve
1264 A - gethostbyname()
1265 B - gethostbyname_r() with 3 arguments
1266 C - gethostbyname_r() with 5 arguments
1267 D - gethostbyname_r() with 6 arguments
1269 - The IPv6-resolver that uses getaddrinfo()
1271 - The c-ares based name resolver that uses the c-ares library for resolves.
1274 - The threaded resolver (default option on Windows). It uses:
1276 A - gethostbyname() on plain IPv4 hosts
1277 B - getaddrinfo() on IPv6 enabled hosts
1279 Also note that libcurl never resolves or reverse-lookups addresses given as
1284 libcurl provides a default built-in write function that writes received data
1295 No. libcurl operates on a higher level. Besides, faking IP address would
1296 imply sending IP packets with a made-up source address, and then you normally
1300 If you use a proxy to access remote sites, the sites will not see your local
1301 IP address but instead the address of the proxy.
1303 Also note that on many networks NATs or other IP-munging techniques are used
1311 one of the callbacks, but none of them are instant. There is no function you
1322 5.14 Using C++ non-static functions for callbacks?
1332 // Call non-static member function.
1333 static_cast<YourClass*>(f)->nonStaticFunction();
1347 The follow-up question tends to be how is a program supposed to parse the
1350 will return data in a machine-readable format that can be parsed for type.
1355 Also, both LIST and NLST tend to hide Unix-style hidden files (those that
1356 start with a dot) by default so you need to do "LIST -a" or similar to see
1359 Example - List only directories.
1362 curl -s ftp.funet.fi/pub/ -X MLSD | \
1363 perl -lne 'print if s/(?:^|;)type=dir;[^ ]+ (.+)$/$1/'
1365 curl -s ftp.kernel.org/pub/linux/kernel/ | \
1366 perl -lne 'print if s/^d[-rwx]{9}(?: +[^ ]+){7} (.+)$/$1/'
1373 5.16 I want a different time-out
1379 libcurl offers many more ways to time-out operations. A common alternative
1384 The most flexible way is by writing your own time-out logic and using
1391 No. libcurl offers no functions or building blocks to build any kind of
1392 Internet protocol server. libcurl is only a client-side library. For server
1395 for. There are also really good stand-alone servers that have been tested
1396 and proven for many years. There is no need for you to reinvent them.
1400 Put simply: no, libcurl will execute in the same thread you call it in. All
1404 sure you use the non-blocking multi API which will do transfers
1405 asynchronously - still in the same single thread.
1432 6.2 I have a closed-source program, can I use the libcurl library?
1460 No.
1467 curl in their projects, no matter what license they already have in use.
1471 Next to none. All you need to adhere to is the MIT-style license (stated in
1497 The module for PHP that makes it possible for PHP programs to access curl-
1512 Yes - at least in PHP version 4.3.8 and later (this has been known to not
1546 In one go: no. Little by little over time? Maybe.
1558 other languages, as long as those backends can be plugged in at build-time.