Peter Wu
970c22f970
libcurl: add UNIX domain sockets support
...
The ability to do HTTP requests over a UNIX domain socket has been
requested before, in Apr 2008 [0][1] and Sep 2010 [2]. While a
discussion happened, no patch seems to get through. I decided to give it
a go since I need to test a nginx HTTP server which listens on a UNIX
domain socket.
One patch [3] seems to make it possible to use the
CURLOPT_OPENSOCKETFUNCTION function to gain a UNIX domain socket.
Another person wrote a Go program which can do HTTP over a UNIX socket
for Docker[4] which uses a special URL scheme (though the name contains
cURL, it has no relation to the cURL library).
This patch considers support for UNIX domain sockets at the same level
as HTTP proxies / IPv6, it acts as an intermediate socket provider and
not as a separate protocol. Since this feature affects network
operations, a new feature flag was added ("unix-sockets") with a
corresponding CURL_VERSION_UNIX_SOCKETS macro.
A new CURLOPT_UNIX_SOCKET_PATH option is added and documented. This
option enables UNIX domain sockets support for all requests on the
handle (replacing IP sockets and skipping proxies).
A new configure option (--enable-unix-sockets) and CMake option
(ENABLE_UNIX_SOCKETS) can disable this optional feature. Note that I
deliberately did not mark this feature as advanced, this is a
feature/component that should easily be available.
[0]: http://curl.haxx.se/mail/lib-2008-04/0279.html
[1]: http://daniel.haxx.se/blog/2008/04/14/http-over-unix-domain-sockets/
[2]: http://sourceforge.net/p/curl/feature-requests/53/
[3]: http://curl.haxx.se/mail/lib-2008-04/0361.html
[4]: https://github.com/Soulou/curl-unix-socket
Signed-off-by: Peter Wu <peter@lekensteyn.nl>
2014-12-04 02:52:19 +01:00
Bill Nagel
96c3b1a1bb
docs: Updated for the SMB protocol
...
This patch updates the documentation for the SMB/CIFS protocol.
2014-11-30 21:53:30 +00:00
Steve Holme
982a649aa5
docs: Updated for commit 4bd860a001
and SMTP Unix line ending conversion
2014-11-26 23:32:38 +00:00
Steve Holme
aa3e8dd3da
CURLOPT_CRLF.3: Fixed inclusion of SMTP in listed protocols
2014-11-25 23:23:42 +00:00
be1a505189
SSL: Add PEM format support for public key pinning
2014-11-24 19:30:09 +01:00
Brad Harder
416cd9ac11
CURLOPT_POSTFIELDS.3: mention the COPYPOSTFIELDS option
2014-11-20 10:27:09 +01:00
Daniel Stenberg
fb24990211
opts-Makefile: put more man pages into dist and make hmtl+pdf
2014-11-04 10:40:07 +01:00
Daniel Stenberg
1b8977ff7c
opts: more multi options as stand-alone man pages
2014-11-04 10:37:09 +01:00
Daniel Stenberg
a14ccfffb8
opts: made stand-alone man-pages for several multi options
2014-11-03 23:50:31 +01:00
Steve Holme
e7497c0c99
CURLOPT_XOAUTH2_BEARER.3: Corrected the OAuth version number
2014-11-02 11:03:13 +00:00
Steve Holme
a419802c71
CURLOPT_SASL_IR.3: Added supported mechanism information
...
...and removed duplication of what protocols are supported from the
description text.
2014-11-02 11:03:11 +00:00
Steve Holme
2b535b3947
opts: Use common wording for MAIL related names
2014-11-02 11:03:09 +00:00
Steve Holme
7ba8e0bd01
opts: Use common wording for TLS user/password option names
...
...and revised the proxy wording a little as well.
2014-11-02 11:03:06 +00:00
Steve Holme
49ae8f8144
CURLOPT_MAXCONNECTS.3: Reworked the description to be less confusing
...
...and corrected a related typo in curl_easy_setopt.3.
2014-11-02 11:03:04 +00:00
Steve Holme
795885f454
opts: Use common wording for user/password option names
2014-10-31 22:22:19 +00:00
Steve Holme
7d9c1ebd66
CURLOPT_CONNECT_ONLY.3: Removed "This option is implemented for..." text
...
As this is covered by the PROTOCOLS section and saves having to update
two parts of the document with the same information in future.
2014-10-31 13:14:14 +00:00
Steve Holme
3af962a993
CURLOPT_GSSAPI_DELEGATION.3: Use GSS-API rather than GSSAPI
...
As implementations are refereed to GSS-API libraries as per the RFC and
GSSAPI typically refers to an authentication mechanism.
2014-10-31 12:48:48 +00:00
Steve Holme
211ca5ff77
CURLOPT_CONNECT_ONLY.3: Fixed incomplete protocol list
...
Added missing IMAP to the protocol list.
2014-10-31 12:44:43 +00:00
Daniel Stenberg
006556713e
CURLOPT_PINNEDPUBLICKEY.3: added details
2014-10-30 14:57:07 +01:00
Steve Holme
b274dedf1b
CURLOPT_CUSTOMREQUEST.3: Fixed incomplete protocol list
...
Whilst the description included information about SMTP, the protocol
list only showed "TTP, FTP, IMAP, POP3".
2014-10-30 12:42:06 +00:00
Steve Holme
89cc9988c9
CURLOPT_DIRLISTONLY.3: Added information about the usage in POP3
2014-10-30 12:42:05 +00:00
Daniel Stenberg
e102478b3d
opts: added some "SEE ALSO" references
2014-10-29 22:38:39 +01:00
Jay Satiro
ec783dc142
SSL: Remove SSLv3 from SSL default due to POODLE attack
...
- Remove SSLv3 from SSL default in darwinssl, schannel, cyassl, nss,
openssl effectively making the default TLS 1.x. axTLS is not affected
since it supports only TLS, and gnutls is not affected since it already
defaults to TLS 1.x.
- Update CURLOPT_SSLVERSION doc
2014-10-24 13:41:56 +02:00
Daniel Stenberg
e116d0a625
CURLOPT_RESOLVE.3: add an example
2014-10-23 14:34:41 +02:00
Daniel Stenberg
4cb7aa067c
opts: provide more and updated examples
2014-10-21 13:40:38 +02:00
Daniel Stenberg
4111032511
CURLOPT_RANGE.3: works for SFTP as well
...
... and added a small example
2014-10-21 13:06:22 +02:00
Daniel Stenberg
1de0823953
CURLOPT_SSLVERSION.3: provide an example
2014-10-21 11:10:03 +02:00
Daniel Stenberg
7b82b07fba
docs: edited lots of libcurl docs for clarity
2014-10-21 10:26:40 +02:00
Daniel Stenberg
c857bb68ec
opts: added examples
2014-10-21 08:58:24 +02:00
Daniel Stenberg
89e543f383
CURLOPT_TLSAUTH_*.3: fix reference typos
2014-10-14 10:23:27 +02:00
Patrick Monnerat
265b9a2e49
vtls: remove QsoSSL
2014-10-13 16:33:47 +02:00
93e450793c
SSL: implement public key pinning
...
Option --pinnedpubkey takes a path to a public key in DER format and
only connect if it matches (currently only implemented with OpenSSL).
Provides CURLOPT_PINNEDPUBLICKEY for curl_easy_setopt().
Extract a public RSA key from a website like so:
openssl s_client -connect google.com:443 2>&1 < /dev/null | \
sed -n '/-----BEGIN/,/-----END/p' | openssl x509 -noout -pubkey \
| openssl rsa -pubin -outform DER > google.com.der
2014-10-07 14:44:19 +02:00
Daniel Stenberg
b1c4c39c58
CURLOPT_HTTPHEADER.3: libcurl doesn't copy the whole list
2014-10-03 13:35:40 +02:00
Yousuke Kimoto
b10a838a7a
CURLOPT_COOKIELIST: Added "RELOAD" command
2014-09-25 16:28:17 +02:00
Michael Wallner
9ee8efc63b
CURLOPT_POSTREDIR.3: Added availability for CURL_REDIR_POST_303
2014-09-25 15:14:16 +02:00
Daniel Stenberg
841c9884b2
CURLOPT_COOKIE*: added more cross-references
2014-09-18 22:58:12 +02:00
Daniel Stenberg
0b48d1c821
CURLOPT_CA*: better refering between *CAINFO and *CAPATH
...
... and a minor wording edit
2014-09-03 23:04:52 +02:00
Daniel Stenberg
1d30f40950
CURLOPT_NOBODY.3: clarify this option is for downloads
...
When enabling CURLOPT_NOBODY, libcurl effectively switches off upload
mode and will do a download (without a body). This is now better
explained in this man page.
Bug: http://curl.haxx.se/mail/lib-2014-08/0236.html
Reported-by: John Coffey
2014-08-28 00:11:09 +02:00
Steve Holme
75be5a6681
docs: Escaped single backslash
2014-08-16 11:52:11 +01:00
Steve Holme
97f6049bc2
CURLOPT_USERNAME.3: Added Kerberos V5 and NTLM domain information
...
This repeats what has already been documented in both the curl manpage
and CURLOPT_USERPWD documentation but is provided here for completeness
as someone may not especially read the latter when using libcurl.
2014-08-16 10:46:57 +01:00
Steve Holme
29240cb5c1
CURLOPT_USERPWD.3: Updated following Kerberos V5 SSPI changes
...
Added information about Kerberos V5 requiring the domain part in the
user name.
Mentioned that the user name can be specified in UPN format, and not
just in Down-Level Logon Name format, following the information
added in commit 7679cb3fa8
reworking the exisitng information in the
process.
2014-08-16 10:42:31 +01:00
Michael Osipov
37f0e8a32c
docs: Update SPNEGO and GSS-API related doc sections
...
Reflect recent changes in SPNEGO and GSS-API code in the docs.
Update them with appropriate namings and remove visible spots for
GSS-Negotiate.
2014-08-09 00:08:51 +01:00
Daniel Stenberg
e4f6adb023
CURLOPT_SSL_VERIFYPEER.3. add a warning about disabling it
2014-08-02 23:09:22 +02:00
Michael Wallner
7bb4c8cadb
CURLOPT_HEADEROPT.3: typo: do -> to
2014-07-31 17:52:08 +02:00
Dan Fandrich
524bb823c9
opts: fixed some typos
2014-07-30 23:37:24 +02:00
Alessandro Ghedini
6f8046f7a4
CURLOPT_CHUNK_BGN_FUNCTION: fix typo
2014-07-19 21:27:38 +02:00
Steve Holme
f9b80cded7
CURLOPT_UPLOAD: Corrected argument type
2014-07-10 22:30:43 +01:00
Dimitrios Siganos
afbd5f978e
Document type of argument for CURLOPT_FOLLOWLOCATION.
2014-07-03 22:44:45 +02:00
Dimitrios Siganos
7441c6d7af
Document type of argument for CURLOPT_ERRORBUFFER.
2014-07-03 22:44:45 +02:00
Dimitrios Siganos
3e0443239a
Document type of argument for CURLOPT_COPYPOSTFIELDS.
2014-07-03 22:44:45 +02:00
Dimitrios Siganos
8b8cc85d8d
Document type of argument for CURLOPT_ADDRESS_SCOPE.
2014-07-03 22:44:45 +02:00
Dan Fandrich
1c1d9a3a86
opts: fixed some CURLOPT references so they get turned into links
2014-07-02 21:40:39 +02:00
Dan Fandrich
46a886cd48
opts: Document the socket callback function parameters
2014-07-01 08:12:11 +02:00
Steve Holme
1b6bc02fb9
opts: Fixed some typos
2014-06-28 12:40:06 +01:00
Dan Fandrich
d8287ca8bc
opts: added some DEFAULT and RETURN VALUE sections
2014-06-24 00:00:34 +02:00
Daniel Stenberg
7d618c477f
opts: the CURLOPT_SSL_ENABLE_*PN options are enabled by default
2014-06-21 20:03:35 +02:00
Dan Fandrich
d4cc9db64d
opts: fixed mancheck for out-of-tree builds
2014-06-21 11:22:04 +02:00
Daniel Stenberg
25a975408e
CURLOPT_DNS_LOCAL_IP4.3: better short desc
2014-06-21 00:04:13 +02:00
Dan Fandrich
c088f29b98
opts: document CURLE_OUT_OF_MEMORY among other return values
2014-06-20 23:43:46 +02:00
Dan Fandrich
59d5b4ce06
opts: fixed some typos
2014-06-20 23:31:06 +02:00
Daniel Stenberg
68d1bea5fc
opts: various corrections
2014-06-20 01:10:34 +02:00
Daniel Stenberg
662f749cec
opts: add the rest of the options
...
... and fixed mancheck to ignore obsolete options
2014-06-20 01:02:49 +02:00
Daniel Stenberg
290e1bbe0d
opts: the final bunch of options as man pages
...
Now all current options have their own man pages.
2014-06-20 00:58:18 +02:00
Daniel Stenberg
a6cd174b2e
opts: 37 additional man pages
2014-06-19 17:59:13 +02:00
Daniel Stenberg
fede49532d
CURLOPT_URL: move up the text from "Notes"
2014-06-19 15:11:49 +02:00
Daniel Stenberg
c31e6d223a
opts: more man pages
2014-06-19 13:53:13 +02:00
Daniel Stenberg
47311e4c7e
CURLOPT_UNRESTRICTED_AUTH.3: added missing 'T'
2014-06-19 08:40:51 +02:00
Daniel Stenberg
ba1d831cf1
opts: makefile now includes all current man pages
2014-06-19 00:08:18 +02:00
Daniel Stenberg
ae353b0b20
opts: 11 more man pages
2014-06-19 00:03:17 +02:00
Dan Fandrich
efbffa2fb7
opts: document CURLE_OUT_OF_MEMORY as RETURN VALUE
2014-06-18 23:28:13 +02:00
Dan Fandrich
479675f23e
opts: fixed a couple of typos
2014-06-18 23:07:08 +02:00
Daniel Stenberg
8fab76e8f3
opts: 16 more man pages
2014-06-18 14:40:26 +02:00
Daniel Stenberg
c3954ffb25
opts: more man pages
2014-06-18 13:18:58 +02:00
Daniel Stenberg
38bf85fd61
CURLOPT_READFUNCTION.3: add short desc
2014-06-18 11:55:13 +02:00
Daniel Stenberg
de6b89262e
CURLOPT_LOW_SPEED_LIMIT.3: language
2014-06-18 11:54:42 +02:00
Daniel Stenberg
e34bdc3187
opts: 4 more man pages
2014-06-18 11:45:22 +02:00
Daniel Stenberg
1a876a37cf
opts: add all existing man pages to the dist
2014-06-18 10:18:00 +02:00
Dan Fandrich
455bfedc84
opts: fixed a few typos
2014-06-18 00:54:30 +02:00
Daniel Stenberg
38d517fcd4
opts: 29 more options as man pages
2014-06-18 00:30:02 +02:00
Daniel Stenberg
0890bb6a51
opts: 9 more options as separate man pages
2014-06-17 18:04:40 +02:00
Daniel Stenberg
0042557598
opts: 3 more options as man pages
2014-06-17 16:48:16 +02:00
Daniel Stenberg
d865376c1d
opts: 7 more setopt options as individual man pages
2014-06-17 11:39:26 +02:00
Daniel Stenberg
0219d4e04e
opts template: provide a filled in error code phrase
2014-06-17 11:38:51 +02:00
Daniel Stenberg
c522c7ba88
CURLOPT_SOCKOPTFUNCTION.3: clarify return code
2014-06-17 10:10:13 +02:00
Daniel Stenberg
89a2178bc9
CURLOPT_WRITEDATA.3: move version info to AVAILABILITY
2014-06-17 10:02:14 +02:00
Daniel Stenberg
5d746fc98c
opts: 4 more options with stand-alone man pages
2014-06-17 09:54:58 +02:00
Daniel Stenberg
d8aa360058
CURLOPT_READFUNCTION.3: see also the seekfunction
2014-06-17 09:54:40 +02:00
Daniel Stenberg
a6882a3a49
CURLOPT_IOCTLFUNCTION.3: fill in short desc
2014-06-17 08:12:14 +02:00
Dan Fandrich
4a2da38bed
CURLOPT_READDATA.3: fixed typo
2014-06-17 00:47:25 +02:00
Daniel Stenberg
b56dff79ad
opts: initial makefile
...
with a bonus first rough 'mancheck' target to see which man pages that
are still missing
2014-06-17 00:29:02 +02:00
Daniel Stenberg
e029243727
CURLOPT_IOCTLFUNCTION.3: initial man page
2014-06-17 00:15:41 +02:00
Daniel Stenberg
bb71f1aa25
CURLOPT_WRITEFUNCTION: changed the order of some sentences
...
First explain the data then describe what the callback should return.
2014-06-17 00:02:22 +02:00
Daniel Stenberg
b203377df7
CURLOPT_WRITEFUNCTION.3: improved language
...
Suggestions-by: Jeff Pohlmeyer
2014-06-16 23:55:30 +02:00
Daniel Stenberg
28b698858c
opts docs: 3 more options in their own man pages
2014-06-16 23:01:12 +02:00
Daniel Stenberg
7ad9cb12b2
template: a template for adding new option man pages
...
Inludes all the sections to consider.
2014-06-16 22:16:13 +02:00
Daniel Stenberg
a5e498b543
CURLOPT_WRITEFUNCTION: add RETURN VALUE and DEFAULT sections
2014-06-16 22:01:08 +02:00
Daniel Stenberg
e810ddbb70
CURLOPT_WRITEFUNCTION: initial man page
2014-06-16 20:27:37 +02:00
Daniel Stenberg
0761f17560
CURLOPT_WILDCARDMATCH: initial man page
2014-06-16 20:27:28 +02:00
Daniel Stenberg
0795e5c8b9
CURLOPT_VERBOSE: initial man page
2014-06-16 20:27:18 +02:00
Daniel Stenberg
49b3c145ee
CURLOPT_NOSIGNAL: initial man page
2014-06-16 20:27:07 +02:00
Daniel Stenberg
801a683007
CURLOPT_NOPROGRESS: initial man page
2014-06-16 20:26:53 +02:00
Daniel Stenberg
7e109995fd
CURLOPT_HEADER: initial man page
2014-06-16 20:26:32 +02:00