aboutsummaryrefslogtreecommitdiff
path: root/FAQ
blob: 1b120cb0ee02020cefe5e80f24e1ae06ed43ede3 (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
86
87
88
89
90
91
92
93
94
95
96
                                  _   _ ____  _     
                              ___| | | |  _ \| |    
                             / __| | | | |_) | |    
                            | (__| |_| |  _ <| |___ 
                             \___|\___/|_| \_\_____|

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>

Will you write a script for me getting ZZZ from YYY?
====================================================

  No.

  I try to help out to solve issues with curl and related stuff, but I really
  do have a lot of stuff on my daily schedule and I'd prefer if you did not
  ask me to do your jobs. Writing scripts is very easy. Using curl might be
  tricky, but once you're past the initial mistakes the road to success is
  very short and straight-forward.