aboutsummaryrefslogtreecommitdiff
path: root/docs/FAQ
blob: 1a9fec3dcce050e9a949e1b669d9134b5b6d884a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
                                  _   _ ____  _     
                              ___| | | |  _ \| |    
                             / __| | | | |_) | |    
                            | (__| |_| |  _ <| |___ 
                             \___|\___/|_| \_\_____|

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>