| _ _ ____ _ |
| ___| | | | _ \| | |
| / __| | | | |_) | | |
| | (__| |_| | _ <| |___ |
| \___|\___/|_| \_\_____| |
| |
| FAQ |
| |
| Problems connecting to SSL servers. |
| =================================== |
| |
| It took a very long time before I could sort out why curl had problems |
| to connect to certain SSL servers when using SSLeay or OpenSSL v0.9+. |
| The error sometimes showed up similar to: |
| |
| 16570:error:1407D071:SSL routines:SSL2_READ:bad mac decode:s2_pkt.c:233: |
| |
| It turned out to be because many older SSL servers don't deal with SSLv3 |
| requests properly. To correct this problem, tell curl to select SSLv2 from |
| the command line (-2/--sslv2). |
| |
| I have also seen examples where the remote server didn't like the SSLv2 |
| request and instead you had to force curl to use SSLv3 with -3/--sslv3. |
| |
| Does curl support resume? |
| ========================= |
| |
| Yes. Both ways on FTP, download ways on HTTP. |
| |
| Is libcurl thread safe? |
| ======================= |
| |
| Yes, as far as curl's own code goes. It does use system calls that often |
| aren't thread safe in most environments, such as gethostbyname(). |
| |
| I am very interested in once and for all getting some kind of report or |
| README file from those who have used libcurl in a threaded environment, |
| since I haven't and I get this question more and more frequently! |
| |
| Why doesn't my posting using -F work? |
| ===================================== |
| |
| You can't simply use -F or -d at your choice. The web server that will |
| receive your post assumes one of the formats. If the form you're trying to |
| "fake" sets the type to 'multipart/form-data', than and only then you must |
| use the -F type. In all the most common cases, you should use -d which then |
| causes a posting with the type 'application/x-www-form-urlencoded'. |
| |
| Does curl support custom FTP commands? |
| ====================================== |
| |
| Yes it does, you can tell curl to perform optional commands both before |
| and/or after a file transfer. Study the -Q/--quote option. |
| |
| Since curl is used for file transfers, you don't use curl to just perform |
| ftp commands without transfering anything. Therefore you must always specify |
| a URL to transfer to/from even when doing custom FTP commands. |
| |
| Does curl work with other SSL libraries? |
| ======================================== |
| |
| Curl has been written to use OpenSSL, although I doubt there would be much |
| problems using a different library. I just don't know any other free one and |
| that has limited my possibilities to develop against anything else. |
| |
| If anyone does "port" curl to use a commercial SSL library, I am of course |
| very interested in getting the patch! |
| |
| configre doesn't find OpenSSL even when it is installed |
| ======================================================= |
| |
| Platforms: Solaris (native cc compiler) and HPUX (native cc compiler) |
| |
| When configuring curl, I specify --with-ssl. OpenSSL is installed in |
| /usr/local/ssl Configure reports SSL in /usr/local/ssl, but fails to find |
| CRYPTO_lock in -lcrypto |
| |
| Cause: The cc for this test places the -L/usr/local/ssl/lib AFTER -lcrypto, |
| so ld can't find the library. This is due to a bug in the GNU autoconf tool. |
| |
| Workaround: Specifying "LDFLAGS=-L/usr/local/ssl/lib" in front of ./configure |
| places the -L/usr/local/ssl/lib early enough in the command line to make |
| things work |
| |
| Submitted by: Bob Allison <allisonb@users.sourceforge.net> |