Compare commits
173 Commits
curl-7_45_
...
curl-7_46_
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e2ae32ff5f | ||
|
|
6623a485d3 | ||
|
|
940c2f51aa | ||
|
|
a47137c4a5 | ||
|
|
5648f0a32c | ||
|
|
2fddc4e3e1 | ||
|
|
e55f15454e | ||
|
|
fe7c39d353 | ||
|
|
8f281fb76d | ||
|
|
8cbd80686e | ||
|
|
a14fa8f8ff | ||
|
|
81ae6d01fa | ||
|
|
19a8afb3c0 | ||
|
|
78c25c854a | ||
|
|
db05d7a731 | ||
|
|
cd2b73b3ed | ||
|
|
5b96b5e79e | ||
|
|
99d17a5e2b | ||
|
|
facf2925c7 | ||
|
|
be0d4141af | ||
|
|
40c349ada9 | ||
|
|
bb9ec5ebb2 | ||
|
|
c341311a0e | ||
|
|
fc5d783589 | ||
|
|
98acebb526 | ||
|
|
06b288a72d | ||
|
|
d55f9071fb | ||
|
|
b7f3f1b68f | ||
|
|
c2f1730e17 | ||
|
|
8d17117683 | ||
|
|
c90e348579 | ||
|
|
f024ece8c7 | ||
|
|
ad6f6e17d3 | ||
|
|
0ddc59be0a | ||
|
|
bbb34b6f15 | ||
|
|
41efdadf09 | ||
|
|
6af80afe49 | ||
|
|
80562083da | ||
|
|
ff8d352ae9 | ||
|
|
250d786bd2 | ||
|
|
0cf80c05ea | ||
|
|
b27893d15c | ||
|
|
05cd55f229 | ||
|
|
b4c39010b5 | ||
|
|
a72207ecf0 | ||
|
|
6c5f4303fe | ||
|
|
39904d6f7d | ||
|
|
88f585c3a1 | ||
|
|
051485d9e0 | ||
|
|
3c4065f402 | ||
|
|
d0ddfe2216 | ||
|
|
ca770d87e2 | ||
|
|
ee04bee82b | ||
|
|
6cfd646f58 | ||
|
|
808a17ee67 | ||
|
|
ba4d8f7eba | ||
|
|
febda2f305 | ||
|
|
ceb396c54a | ||
|
|
796c6ef02b | ||
|
|
60cf8157c7 | ||
|
|
ad2d517545 | ||
|
|
1ee0aded89 | ||
|
|
f322ca7765 | ||
|
|
fd0c678e21 | ||
|
|
aba281e762 | ||
|
|
64e959ffe3 | ||
|
|
86e2197337 | ||
|
|
6c20a87105 | ||
|
|
b430d94fb2 | ||
|
|
0755308a6a | ||
|
|
53b13d0c71 | ||
|
|
431ba85829 | ||
|
|
eb3703f052 | ||
|
|
d7e352402c | ||
|
|
278ea24a7a | ||
|
|
1f82df9146 | ||
|
|
077fd8f1fa | ||
|
|
b6baa108fa | ||
|
|
88702ebb31 | ||
|
|
d6d58dd558 | ||
|
|
a7c4bcd971 | ||
|
|
3c24400636 | ||
|
|
dcf5b614ca | ||
|
|
6479f5a076 | ||
|
|
d64add3c71 | ||
|
|
a215381c94 | ||
|
|
3e0d64d075 | ||
|
|
01b7d8274c | ||
|
|
7023d8aa37 | ||
|
|
eaa98cef8d | ||
|
|
4e3d396900 | ||
|
|
f54a4aa9a3 | ||
|
|
6225c48a03 | ||
|
|
9b7f8ab21b | ||
|
|
2200bf6205 | ||
|
|
729b92afbe | ||
|
|
23b8fc15c8 | ||
|
|
e3c85405d0 | ||
|
|
2581585961 | ||
|
|
007f3e0971 | ||
|
|
23c4090fd3 | ||
|
|
50bff12ac8 | ||
|
|
1a614c6c37 | ||
|
|
505d966850 | ||
|
|
748ffc77c6 | ||
|
|
60c86297bf | ||
|
|
cd3aba1a5c | ||
|
|
f6fbbd6dc3 | ||
|
|
210fc95c0f | ||
|
|
3bd7f28000 | ||
|
|
3f7b1bb89f | ||
|
|
1ea3a7d5e4 | ||
|
|
cba5bc5854 | ||
|
|
ca5f9341ef | ||
|
|
49a991346e | ||
|
|
fbf09b7775 | ||
|
|
f6ce8c9abb | ||
|
|
4c62066cec | ||
|
|
9b87078d55 | ||
|
|
370ee919b3 | ||
|
|
e2f430c74a | ||
|
|
ea2c959db4 | ||
|
|
ca20ca54b2 | ||
|
|
d9a1776b32 | ||
|
|
72d99f2e7b | ||
|
|
2f4f4108d6 | ||
|
|
03b6e07816 | ||
|
|
6288cb9304 | ||
|
|
eefd5a95af | ||
|
|
b1fc8c0e97 | ||
|
|
529f9310b1 | ||
|
|
b1199def8c | ||
|
|
b7d894d808 | ||
|
|
d31ed6ac71 | ||
|
|
419d410ca0 | ||
|
|
3042cb5043 | ||
|
|
23cc0c00d4 | ||
|
|
ace68fdc0c | ||
|
|
9744ef2289 | ||
|
|
c238d4da1b | ||
|
|
5fecdc26f7 | ||
|
|
257a1c0d14 | ||
|
|
fe7590f729 | ||
|
|
72646c2e48 | ||
|
|
4201e4a9ac | ||
|
|
4c773bcb47 | ||
|
|
cb922d47d6 | ||
|
|
06b5fd8fde | ||
|
|
5cf0166636 | ||
|
|
19cb0c4a88 | ||
|
|
e77b5b7453 | ||
|
|
684816cd9b | ||
|
|
2b98cb57c4 | ||
|
|
3fde8a4971 | ||
|
|
443e81ea47 | ||
|
|
c6aedf680f | ||
|
|
854976ad7b | ||
|
|
14d5a86b3e | ||
|
|
db532eff1e | ||
|
|
3ad83bc3a6 | ||
|
|
13ddb9e54a | ||
|
|
7715a70ba2 | ||
|
|
6f8ecea059 | ||
|
|
048f84637f | ||
|
|
d30ad55c59 | ||
|
|
08e5fb4465 | ||
|
|
2e373f4a6f | ||
|
|
bce689605d | ||
|
|
8256b44e5a | ||
|
|
da2d3b5805 | ||
|
|
3771da335b | ||
|
|
8bb43ecd05 | ||
|
|
645fc44764 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -49,3 +49,4 @@ missing
|
|||||||
mkinstalldirs
|
mkinstalldirs
|
||||||
tags
|
tags
|
||||||
test-driver
|
test-driver
|
||||||
|
scripts/_curl
|
||||||
|
|||||||
@@ -1153,7 +1153,7 @@ set(VERSIONNUM "${CURL_VERSION_NUM}")
|
|||||||
# Finally generate a "curl-config" matching this config
|
# Finally generate a "curl-config" matching this config
|
||||||
configure_file("${CURL_SOURCE_DIR}/curl-config.in"
|
configure_file("${CURL_SOURCE_DIR}/curl-config.in"
|
||||||
"${CURL_BINARY_DIR}/curl-config" @ONLY)
|
"${CURL_BINARY_DIR}/curl-config" @ONLY)
|
||||||
install(FILES "${CMAKE_BINARY_DIR}/curl-config"
|
install(FILES "${CURL_BINARY_DIR}/curl-config"
|
||||||
DESTINATION bin
|
DESTINATION bin
|
||||||
PERMISSIONS
|
PERMISSIONS
|
||||||
OWNER_READ OWNER_WRITE OWNER_EXECUTE
|
OWNER_READ OWNER_WRITE OWNER_EXECUTE
|
||||||
@@ -1163,7 +1163,7 @@ install(FILES "${CMAKE_BINARY_DIR}/curl-config"
|
|||||||
# Finally generate a pkg-config file matching this config
|
# Finally generate a pkg-config file matching this config
|
||||||
configure_file("${CURL_SOURCE_DIR}/libcurl.pc.in"
|
configure_file("${CURL_SOURCE_DIR}/libcurl.pc.in"
|
||||||
"${CURL_BINARY_DIR}/libcurl.pc" @ONLY)
|
"${CURL_BINARY_DIR}/libcurl.pc" @ONLY)
|
||||||
install(FILES "${CMAKE_BINARY_DIR}/libcurl.pc"
|
install(FILES "${CURL_BINARY_DIR}/libcurl.pc"
|
||||||
DESTINATION lib/pkgconfig)
|
DESTINATION lib/pkgconfig)
|
||||||
|
|
||||||
# This needs to be run very last so other parts of the scripts can take advantage of this.
|
# This needs to be run very last so other parts of the scripts can take advantage of this.
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ else
|
|||||||
ARCHES64='-arch x86_64'
|
ARCHES64='-arch x86_64'
|
||||||
#We "know" that 10.4 and earlier do not support 64bit
|
#We "know" that 10.4 and earlier do not support 64bit
|
||||||
OLD_SDK64=`ls $SDK_PATH|egrep -v "10.[0-4]"|head -1`
|
OLD_SDK64=`ls $SDK_PATH|egrep -v "10.[0-4]"|head -1`
|
||||||
NEW_SDK64=`ls -r $SDK_PATH|egrep -v "10.[0-4]"|head -1`
|
NEW_SDK64=`ls -r $SDK_PATH|egrep -v "10.[0-4][^0-9]" | head -1`
|
||||||
if test $USE_OLD -gt 0
|
if test $USE_OLD -gt 0
|
||||||
then
|
then
|
||||||
SDK64=$OLD_SDK64
|
SDK64=$OLD_SDK64
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP) $(VC7_LIBVCPROJ) $(VC7_SRCVCPROJ) \
|
|||||||
|
|
||||||
bin_SCRIPTS = curl-config
|
bin_SCRIPTS = curl-config
|
||||||
|
|
||||||
SUBDIRS = lib src include
|
SUBDIRS = lib src include scripts
|
||||||
DIST_SUBDIRS = $(SUBDIRS) tests packages docs
|
DIST_SUBDIRS = $(SUBDIRS) tests packages docs
|
||||||
|
|
||||||
pkgconfigdir = $(libdir)/pkgconfig
|
pkgconfigdir = $(libdir)/pkgconfig
|
||||||
@@ -160,10 +160,10 @@ dist-hook:
|
|||||||
done)
|
done)
|
||||||
|
|
||||||
html:
|
html:
|
||||||
cd docs; make html
|
cd docs && make html
|
||||||
|
|
||||||
pdf:
|
pdf:
|
||||||
cd docs; make pdf
|
cd docs && make pdf
|
||||||
|
|
||||||
check: test examples check-docs
|
check: test examples check-docs
|
||||||
|
|
||||||
|
|||||||
241
RELEASE-NOTES
241
RELEASE-NOTES
@@ -1,92 +1,92 @@
|
|||||||
Curl and libcurl 7.45.0
|
Curl and libcurl 7.46.0
|
||||||
|
|
||||||
Public curl releases: 149
|
Public curl releases: 150
|
||||||
Command line options: 177
|
Command line options: 177
|
||||||
curl_easy_setopt() options: 219
|
curl_easy_setopt() options: 221
|
||||||
Public functions in libcurl: 61
|
Public functions in libcurl: 61
|
||||||
Contributors: 1303
|
Contributors: 1340
|
||||||
|
|
||||||
This release includes the following changes:
|
This release includes the following changes:
|
||||||
|
|
||||||
o added CURLOPT_DEFAULT_PROTOCOL [6]
|
o configure: build silently by default
|
||||||
o added new tool option --proto-default [6]
|
o cookies: Add support for Publix Suffix List with libpsl
|
||||||
o getinfo: added CURLINFO_ACTIVESOCKET
|
o vtls: added support for mbedTLS [7]
|
||||||
o turned CURLINFO_* option docs as stand-alone man pages
|
o Added CURLOPT_STREAM_DEPENDS [8]
|
||||||
o curl: point out unnecessary uses of -X in verbose mode [17]
|
o Added CURLOPT_STREAM_DEPENDS_E [9]
|
||||||
|
o Added CURLOPT_STREAM_WEIGHT [10]
|
||||||
|
o Added CURLFORM_CONTENTLEN [14]
|
||||||
|
o oauth2: Added support for OAUTHBEARER SASL mechanism to IMAP, POP3 and SNMP
|
||||||
|
|
||||||
This release includes the following bugfixes:
|
This release includes the following bugfixes:
|
||||||
|
|
||||||
o curl_global_init_mem.3: Stronger thread safety warning [1]
|
o des: Fix header conditional for Curl_des_set_odd_parity
|
||||||
o buildconf.bat: Fixed issues when ran in directories with special chars [2]
|
o ntlm: get rid of unconditional use of long long [1]
|
||||||
o cmake: Fix CurlTests check for gethostbyname_r with 5 arguments
|
o CURLOPT_CERTINFO.3: fix reference to CURLINFO_CERTINFO
|
||||||
o generate.bat: Fixed issues when ran in directories with special chars
|
o docs: CURLINFO_LASTSOCKET => CURLINFO_ACTIVESOCKET [2]
|
||||||
o generate.bat: Only call buildconf.bat if it exists
|
o http2: Fix http2_recv to return -1 if recv returned -1
|
||||||
o generate.bat: Added support for generating only the prerequisite files
|
o curl_global_init_mem: set function pointers before doing init
|
||||||
o curl.1: Document weaknesses in SSLv2 and SSLv3
|
o ntlm: error out without 64bit support as the code needs it [1]
|
||||||
o CURLOPT_HTTP_VERSION.3: connection re-use goes before version
|
o openssl: Fix set up of pkcs12 certificate verification chain
|
||||||
o docs: Update the redirect protocols disabled by default
|
o acinclude: remove PKGCONFIG override [3]
|
||||||
o inet_pton.c: Fix MSVC run-time check failure
|
o test1531: case the size to fix the test on non-largefile builds
|
||||||
o CURLMOPT_PUSHFUNCTION.3: fix argument types
|
o fread_func: move callback pointer from set to state struct [4]
|
||||||
o rtsp: support basic/digest authentication
|
o test1601: fix compilation with --enable-debug and --disable-crypto-auth
|
||||||
o rtsp: stop reading empty DESCRIBE responses
|
o http2: Don't pass unitialized name+len pairs to nghttp2_submit_request [5]
|
||||||
o travis: Upgrading to container based build [3]
|
o curlbuild.h: Fix non-configure compiling to mips and sh4 targets
|
||||||
o travis.yml: Add OS X testbot
|
o tool: Generate easysrc with last cache linked-list [6]
|
||||||
o FTP: make state machine not get stuck in state
|
o cmake: Fix for add_subdirectory(curl) use-case
|
||||||
o openssl: handle lack of server cert when strict checking disabled [4]
|
o vtls: fix compiler warning for TLS backends without sha256
|
||||||
o configure: change functions to detect openssl (clones) [5]
|
o build: fix for MSDOS/djgpp
|
||||||
o configure: detect latest boringssl [5]
|
o checksrc: add crude // detection
|
||||||
o runtests: Allow for spaces in server-verify curl custom path
|
o http2: on_frame_recv: trust the conn/data input
|
||||||
o http2: on_frame_recv: get a proper 'conn' for the debug logging
|
o ftp: allow CURLOPT_IGNORE_CONTENT_LENGTH to ignore size [11]
|
||||||
o ntlm: mark deliberate switch case fall-through
|
o polarssl/mbedtls: fix name space pollution
|
||||||
o http2: remove dead code
|
o build: Fix mingw ssl gdi32 order [12]
|
||||||
o curl_easy_{escape,unescape}.3: "char *" vs. "const char *" [7]
|
o build: Fix support for PKG_CONFIG
|
||||||
o curl: point out the conflicting HTTP methods if used
|
o MacOSX-Framework: sdk regex fix for sdk 10.10 and later
|
||||||
o cmake: added Windows SSL support [8]
|
o socks: Fix incorrect port numbers in failed connect messages
|
||||||
o curl_easy_{escape,setopt}.3: fix example
|
o curl.1: -E: s/private certificate/client certificate
|
||||||
o curl_easy_escape.3: escape '\n' [9]
|
o curl.h: s/HTTPPOST_/CURL_HTTPOST_ [13]
|
||||||
o libcurl.m4: Put braces around empty if body [10]
|
o curl_formadd: support >2GB files on windows [14]
|
||||||
o buildconf.bat: Fixed double blank line in 'curl manual' warning output
|
o http redirects: %-encode bytes outside of ascii range [15]
|
||||||
o sasl: Only define Curl_sasl_digest_get_pair() when CRYPTO_AUTH enabled
|
o rawstr: Speed up Curl_raw_toupper by 40%
|
||||||
o inet_pton.c: Fix MSVC run-time check failure
|
o curl_ntlm_core: fix 2 curl_off_t constant overflows.
|
||||||
o CURLOPT_FOLLOWLOCATION.3: mention methods for redirects
|
o getinfo: CURLINFO_ACTIVESOCKET: fix bad socket value
|
||||||
o http2: don't pass on Connection: headers [11]
|
o tftp tests: verify sent options too
|
||||||
o nss: do not directly access SSL_ImplementedCiphers [12]
|
o imap: Don't call imap_atom() when no mailbox specified in LIST command
|
||||||
o docs: numerous cleanups and spelling fixes
|
o imap: Fixed double quote in LIST command when mailbox contains spaces
|
||||||
o FTP: do_more: add check for wait_data_conn in upload case [13]
|
o imap: Don't check for continuation when executing a CUSTOMREQUEST [16]
|
||||||
o parse_proxy: reject illegal port numbers [14]
|
o acinclude: Remove check for 16-bit curl_off_t
|
||||||
o cmake: IPv6 : disable Unix header check on Windows platform [15]
|
o BoringSSL: Work with stricter BIO_get_mem_data() [17]
|
||||||
o winbuild: run buildconf.bat if necessary
|
o cmake: Add missing feature macros in config header [18]
|
||||||
o buildconf.bat: fix syntax error
|
o sasl_sspi: fixed unicode build for digest authentication [19]
|
||||||
o curl_sspi: fix possibly undefined CRYPT_E_REVOKED [16]
|
o sasl_sspi: fix identity memory leak in digest authentication
|
||||||
o nss: prevent NSS from incorrectly re-using a session [18]
|
o unit1602: Fixed failure in torture test
|
||||||
o libcurl-errors.3: add two missing error codes
|
o unit1603: Added unit tests for hash functions
|
||||||
o openssl: fix build with < 0.9.8
|
o vtls/openssl: remove unused traces of yassl ifdefs
|
||||||
o openssl: refactor certificate parsing to use OpenSSL memory BIO [19]
|
o openssl: remove #ifdefs for < 0.9.7 support
|
||||||
o openldap: only part of LDAP query results received [20]
|
o typecheck-gcc.h: add some missing options
|
||||||
o ssl: add server cert's "sha256//" hash to verbose [21]
|
o curl: mark two more options strings for --libcurl output
|
||||||
o NTLM: Reset auth-done when using a fresh connection [22]
|
o openssl: Free modules on cleanup [20]
|
||||||
o curl: generate easysrc only on --libcurl [23]
|
o CURLMOPT_PUSHFUNCTION.3: *_byname() returns only the first header
|
||||||
o tests: disable 1801 until fixed [24]
|
o getconnectinfo: Don't call recv(2) if socket == -1
|
||||||
o CURLINFO_TLS_SESSION: always return backend info
|
o http2: http_done: don't free already-freed push headers
|
||||||
o gnutls: Support CURLOPT_KEYPASSWD
|
o zsh completion: Preserve single quotes in output [21]
|
||||||
o gnutls: Report actual GnuTLS error message for certificate errors
|
o os400: Provide options for libssh2 use in compile scripts.
|
||||||
o tests: disable 1510 due to CI-problems on github
|
o build: Fix theoretical infinite loops [22]
|
||||||
o cmake: Put "winsock2.h" before "windows.h" during configure checks
|
o pop3: Differentiate between success and continuation responses
|
||||||
o cmake: Ensure discovered include dirs are considered
|
o examples: Fixed compilation warnings
|
||||||
o configure: Add missing ')' for CURL_CHECK_OPTION_RT [25]
|
o schannel: Use GetVersionEx() when VerifyVersionInfo() isn't available
|
||||||
o build: fix failures with -Wcast-align and -Werror [26]
|
o CURLOPT_HEADERFUNCTION.3: fix typo
|
||||||
o FTP: fix uploading ASCII with unknown size
|
o curl: expanded the -XHEAD warning text
|
||||||
o readwrite_data: set a max number of loops
|
o done: make sure the final progress update is made [23]
|
||||||
o http2: avoid superfluous Curl_expire() calls
|
o build: Install zsh completion [24]
|
||||||
o http2: set TCP_NODELAY unconditionally [27]
|
o RTSP: do not add if-modified-since without timecondition [25]
|
||||||
o docs: fix unescaped '\n' in man pages
|
o curl: Fixed display of URL index in password prompt for --next
|
||||||
o openssl: Fix algorithm init to make (gost) engines work [28]
|
o nonblock: fix setting non-blocking mode for Amiga [26]
|
||||||
o win32: make recent Borland compilers use long long
|
o http2 push: add missing inits of new stream [27]
|
||||||
o runtests: Fix pid check in checkdied
|
o http2: convert some verbose output into debug-only output
|
||||||
o gopher: don't send NUL byte [29]
|
o Curl_read_plain: clean up ifdefs that break statements [28]
|
||||||
o tool_setopt: fix c_escape truncated octal [30]
|
|
||||||
o hiperfifo: fix the pointer passed to WRITEDATA [31]
|
|
||||||
o getinfo: Fix return code for unknown CURLINFO options [32]
|
|
||||||
|
|
||||||
This release includes the following known bugs:
|
This release includes the following known bugs:
|
||||||
|
|
||||||
@@ -95,52 +95,45 @@ This release includes the following known bugs:
|
|||||||
This release would not have looked like this without help, code, reports and
|
This release would not have looked like this without help, code, reports and
|
||||||
advice from friends like these:
|
advice from friends like these:
|
||||||
|
|
||||||
Alessandro Ghedini, Benjamin Kircher, Bertrand Simonnet, Brad King,
|
Anders Bakken, Dan Fandrich, Daniel Hwang, Daniel Shahaf, Daniel Stenberg,
|
||||||
Dan Fandrich, Daniel Hwang, Daniel Kahn Gillmor, Daniel Lee Hwang,
|
Davey Shafik, Dmitry S. Baikov, Douglas Creager, Erik Johansson,
|
||||||
Daniel Seither, Daniel Stenberg, Denis Feklushkin, Eric Ridge, Erik Janssen,
|
Flavio Medeiros, Gisle Vanem, Javier G. Sogo, John Levon, Jonas Minnberg,
|
||||||
Isaac Boukris, Jactry Zeng, Jakub Zakrzewski, Jim Hollinger, Kamil Dudka,
|
Justin Ehlert, Kamil Dudka, Kang Lin, Kurt Fankhauser, Lauri Kasanen,
|
||||||
Maksim Stsepanenka, Marcel Raad, Michael Kalinin, Mike Crowe,
|
Lukas Ruzicka, Marcel Raad, Michał Piechowski, Mohammad AlSaleh, Norbert Kett,
|
||||||
Nathaniel Waisbrot, Nikolai Kondrashov, Orange Tsai, Patricia Muscalu,
|
Patrick Monnerat, Rainer Jung, Ray Satiro, Richard Hosking,
|
||||||
Patrick Monnerat, Rajkumar Mandal, Ray Satiro, Razvan Cojocaru, Rémy Léone,
|
Sebastian Pohlschmidt, Stefan Bühler, Steve Holme, Svyatoslav Mishyn,
|
||||||
Richard van den Berg, Sam Roth, Sergei Nikulov, Steve Holme,
|
Tatsuhiro Tsujikawa, Tim Rühsen, Xiangbin Li,
|
||||||
Svyatoslav Mishyn, Tatsuhiro Tsujikawa, Thorsten Schöning, Viktor Szakáts,
|
(35 contributors)
|
||||||
W. Mark Kubacki,
|
|
||||||
(40 contributors)
|
|
||||||
|
|
||||||
Thanks! (and sorry if I forgot to mention someone)
|
Thanks! (and sorry if I forgot to mention someone)
|
||||||
|
|
||||||
References to bug reports and discussions on issues:
|
References to bug reports and discussions on issues:
|
||||||
|
|
||||||
[1] = http://curl.haxx.se/mail/lib-2015-08/0016.html
|
[1] = http://curl.haxx.se/bug/?i=478
|
||||||
[2] = https://github.com/bagder/curl/pull/379
|
[2] = http://curl.haxx.se/bug/?i=479
|
||||||
[3] = http://curl.haxx.se/bug/?i=388
|
[3] = http://curl.haxx.se/mail/lib-2015-10/0035.html
|
||||||
[4] = http://curl.haxx.se/bug/?i=392
|
[4] = http://curl.haxx.se/bug/?i=346
|
||||||
[5] = https://android.googlesource.com/platform/external/curl/+/f551028d5caab
|
[5] = http://curl.haxx.se/bug/?i=493
|
||||||
29d4b4a4ae8c159c76c3cfd4887%5E!/
|
[6] = http://curl.haxx.se/bug/?i=452
|
||||||
[6] = http://curl.haxx.se/bug/?i=351
|
[7] = http://curl.haxx.se/bug/?i=496
|
||||||
[7] = http://curl.haxx.se/bug/?i=395
|
[8] = http://curl.haxx.se/libcurl/c/CURLOPT_STREAM_DEPENDS.html
|
||||||
[8] = http://curl.haxx.se/bug/?i=399
|
[9] = http://curl.haxx.se/libcurl/c/CURLOPT_STREAM_DEPENDS_E.html
|
||||||
[9] = http://curl.haxx.se/bug/?i=398
|
[10] = http://curl.haxx.se/libcurl/c/CURLOPT_STREAM_WEIGHT.html
|
||||||
[10] = http://curl.haxx.se/bug/?i=402
|
[11] = http://curl.haxx.se/bug/?i=480
|
||||||
[11] = http://curl.haxx.se/bug/?i=401
|
[12] = https://github.com/bagder/curl/pull/501
|
||||||
[12] = https://lists.fedoraproject.org/pipermail/devel/2015-September/214117.html
|
[13] = http://curl.haxx.se/bug/?i=506
|
||||||
[13] = http://curl.haxx.se/bug/?i=405
|
[14] = http://curl.haxx.se/bug/?i=425
|
||||||
[14] = http://curl.haxx.se/bug/?i=415
|
[15] = http://curl.haxx.se/bug/?i=473
|
||||||
[15] = http://curl.haxx.se/bug/?i=409
|
[16] = http://curl.haxx.se/bug/?i=486
|
||||||
[16] = http://curl.haxx.se/bug/?i=411
|
[17] = http://curl.haxx.se/bug/?i=524
|
||||||
[17] = http://daniel.haxx.se/blog/2015/09/11/unnecessary-use-of-curl-x/
|
[18] = http://curl.haxx.se/bug/?i=523
|
||||||
[18] = https://bugzilla.mozilla.org/1202264
|
[19] = http://curl.haxx.se/bug/?i=525
|
||||||
[19] = http://curl.haxx.se/bug/?i=427
|
[20] = http://curl.haxx.se/bug/?i=526
|
||||||
[20] = http://curl.haxx.se/bug/?i=440
|
[21] = http://curl.haxx.se/bug/?i=532
|
||||||
[21] = http://curl.haxx.se/bug/?i=410
|
[22] = http://curl.haxx.se/bug/?i=535
|
||||||
[22] = http://curl.haxx.se/bug/?i=435
|
[23] = http://curl.haxx.se/bug/?i=538
|
||||||
[23] = http://curl.haxx.se/bug/?i=429
|
[24] = http://curl.haxx.se/bug/?i=534
|
||||||
[24] = http://curl.haxx.se/bug/?i=380
|
[25] = http://stackoverflow.com/questions/33903982/curl-timecond-none-doesnt-work-how-to-remove-if-modified-since-header
|
||||||
[25] = http://curl.haxx.se/bug/?i=456
|
[26] = http://curl.haxx.se/mail/lib-2015-11/0088.html
|
||||||
[26] = http://curl.haxx.se/bug/?i=457
|
[27] = http://curl.haxx.se/bug/?i=530
|
||||||
[27] = http://curl.haxx.se/mail/lib-2015-09/0097.html
|
[28] = http://curl.haxx.se/bug/?i=546
|
||||||
[28] = http://curl.haxx.se/bug/?i=447
|
|
||||||
[29] = http://curl.haxx.se/bug/?i=466
|
|
||||||
[30] = http://curl.haxx.se/bug/?i=469
|
|
||||||
[31] = http://curl.haxx.se/bug/?i=471
|
|
||||||
[32] = http://curl.haxx.se/bug/?i=468
|
|
||||||
|
|||||||
29
acinclude.m4
29
acinclude.m4
@@ -5,7 +5,7 @@
|
|||||||
# | (__| |_| | _ <| |___
|
# | (__| |_| | _ <| |___
|
||||||
# \___|\___/|_| \_\_____|
|
# \___|\___/|_| \_\_____|
|
||||||
#
|
#
|
||||||
# Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
|
# Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
#
|
#
|
||||||
# This software is licensed as described in the file COPYING, which
|
# This software is licensed as described in the file COPYING, which
|
||||||
# you should have received as part of this distribution. The terms
|
# you should have received as part of this distribution. The terms
|
||||||
@@ -2837,7 +2837,6 @@ AC_DEFUN([CURL_CONFIGURE_CURL_OFF_T], [
|
|||||||
#
|
#
|
||||||
x_LP64_long=""
|
x_LP64_long=""
|
||||||
x_LP32_long=""
|
x_LP32_long=""
|
||||||
x_LP16_long=""
|
|
||||||
#
|
#
|
||||||
if test "$ac_cv_sizeof_long" -eq "8" &&
|
if test "$ac_cv_sizeof_long" -eq "8" &&
|
||||||
test "$ac_cv_sizeof_voidp" -ge "8"; then
|
test "$ac_cv_sizeof_voidp" -ge "8"; then
|
||||||
@@ -2845,9 +2844,6 @@ AC_DEFUN([CURL_CONFIGURE_CURL_OFF_T], [
|
|||||||
elif test "$ac_cv_sizeof_long" -eq "4" &&
|
elif test "$ac_cv_sizeof_long" -eq "4" &&
|
||||||
test "$ac_cv_sizeof_voidp" -ge "4"; then
|
test "$ac_cv_sizeof_voidp" -ge "4"; then
|
||||||
x_LP32_long="long"
|
x_LP32_long="long"
|
||||||
elif test "$ac_cv_sizeof_long" -eq "2" &&
|
|
||||||
test "$ac_cv_sizeof_voidp" -ge "2"; then
|
|
||||||
x_LP16_long="long"
|
|
||||||
fi
|
fi
|
||||||
#
|
#
|
||||||
dnl DO_CURL_OFF_T_CHECK results are stored in next 3 vars
|
dnl DO_CURL_OFF_T_CHECK results are stored in next 3 vars
|
||||||
@@ -2881,17 +2877,6 @@ AC_DEFUN([CURL_CONFIGURE_CURL_OFF_T], [
|
|||||||
done
|
done
|
||||||
AC_MSG_RESULT([$curl_typeof_curl_off_t])
|
AC_MSG_RESULT([$curl_typeof_curl_off_t])
|
||||||
fi
|
fi
|
||||||
if test "$curl_typeof_curl_off_t" = "unknown"; then
|
|
||||||
AC_MSG_CHECKING([for 16-bit curl_off_t data type])
|
|
||||||
for t2 in \
|
|
||||||
"$x_LP16_long" \
|
|
||||||
'int16_t' \
|
|
||||||
'__int16' \
|
|
||||||
'int' ; do
|
|
||||||
DO_CURL_OFF_T_CHECK([$t2], [2])
|
|
||||||
done
|
|
||||||
AC_MSG_RESULT([$curl_typeof_curl_off_t])
|
|
||||||
fi
|
|
||||||
if test "$curl_typeof_curl_off_t" = "unknown"; then
|
if test "$curl_typeof_curl_off_t" = "unknown"; then
|
||||||
AC_MSG_ERROR([cannot find data type for curl_off_t.])
|
AC_MSG_ERROR([cannot find data type for curl_off_t.])
|
||||||
fi
|
fi
|
||||||
@@ -3052,12 +3037,14 @@ dnl Optionally PKG_CONFIG_LIBDIR may be given as $pcdir.
|
|||||||
dnl
|
dnl
|
||||||
|
|
||||||
AC_DEFUN([CURL_CHECK_PKGCONFIG], [
|
AC_DEFUN([CURL_CHECK_PKGCONFIG], [
|
||||||
|
if test -n "$PKG_CONFIG"; then
|
||||||
|
PKGCONFIG="$PKG_CONFIG"
|
||||||
|
else
|
||||||
|
AC_PATH_TOOL([PKGCONFIG], [pkg-config], [no],
|
||||||
|
[$PATH:/usr/bin:/usr/local/bin])
|
||||||
|
fi
|
||||||
|
|
||||||
PKGCONFIG="no"
|
if test "x$PKGCONFIG" != "xno"; then
|
||||||
|
|
||||||
AC_PATH_TOOL( PKGCONFIG, pkg-config, no, $PATH:/usr/bin:/usr/local/bin)
|
|
||||||
|
|
||||||
if test x$PKGCONFIG != xno; then
|
|
||||||
AC_MSG_CHECKING([for $1 options with pkg-config])
|
AC_MSG_CHECKING([for $1 options with pkg-config])
|
||||||
dnl ask pkg-config about $1
|
dnl ask pkg-config about $1
|
||||||
itexists=`CURL_EXPORT_PCDIR([$2]) dnl
|
itexists=`CURL_EXPORT_PCDIR([$2]) dnl
|
||||||
|
|||||||
181
configure.ac
181
configure.ac
@@ -39,6 +39,7 @@ AC_CONFIG_SRCDIR([lib/urldata.h])
|
|||||||
AC_CONFIG_HEADERS(lib/curl_config.h include/curl/curlbuild.h)
|
AC_CONFIG_HEADERS(lib/curl_config.h include/curl/curlbuild.h)
|
||||||
AC_CONFIG_MACRO_DIR([m4])
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
AM_MAINTAINER_MODE
|
AM_MAINTAINER_MODE
|
||||||
|
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
||||||
|
|
||||||
CURL_CHECK_OPTION_DEBUG
|
CURL_CHECK_OPTION_DEBUG
|
||||||
CURL_CHECK_OPTION_OPTIMIZE
|
CURL_CHECK_OPTION_OPTIMIZE
|
||||||
@@ -148,7 +149,7 @@ AC_SUBST(PKGADD_VENDOR)
|
|||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl initialize all the info variables
|
dnl initialize all the info variables
|
||||||
curl_ssl_msg="no (--with-{ssl,gnutls,nss,polarssl,cyassl,axtls,winssl,darwinssl} )"
|
curl_ssl_msg="no (--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl} )"
|
||||||
curl_ssh_msg="no (--with-libssh2)"
|
curl_ssh_msg="no (--with-libssh2)"
|
||||||
curl_zlib_msg="no (--with-zlib)"
|
curl_zlib_msg="no (--with-zlib)"
|
||||||
curl_gss_msg="no (--with-gssapi)"
|
curl_gss_msg="no (--with-gssapi)"
|
||||||
@@ -166,6 +167,7 @@ curl_verbose_msg="enabled (--disable-verbose)"
|
|||||||
curl_rtsp_msg="no (--enable-rtsp)"
|
curl_rtsp_msg="no (--enable-rtsp)"
|
||||||
curl_rtmp_msg="no (--with-librtmp)"
|
curl_rtmp_msg="no (--with-librtmp)"
|
||||||
curl_mtlnk_msg="no (--with-libmetalink)"
|
curl_mtlnk_msg="no (--with-libmetalink)"
|
||||||
|
curl_psl_msg="no (--with-libpsl)"
|
||||||
|
|
||||||
init_ssl_msg=${curl_ssl_msg}
|
init_ssl_msg=${curl_ssl_msg}
|
||||||
|
|
||||||
@@ -1397,6 +1399,24 @@ if test "$curl_ssl_msg" = "$init_ssl_msg" && test X"$OPT_SSL" != Xno; then
|
|||||||
CLEANCPPFLAGS="$CPPFLAGS"
|
CLEANCPPFLAGS="$CPPFLAGS"
|
||||||
CLEANLIBS="$LIBS"
|
CLEANLIBS="$LIBS"
|
||||||
|
|
||||||
|
dnl This is for Msys/Mingw
|
||||||
|
case $host in
|
||||||
|
*-*-msys* | *-*-mingw*)
|
||||||
|
AC_MSG_CHECKING([for gdi32])
|
||||||
|
my_ac_save_LIBS=$LIBS
|
||||||
|
LIBS="-lgdi32 $LIBS"
|
||||||
|
AC_TRY_LINK([#include <windef.h>
|
||||||
|
#include <wingdi.h>],
|
||||||
|
[GdiFlush();],
|
||||||
|
[ dnl worked!
|
||||||
|
AC_MSG_RESULT([yes])],
|
||||||
|
[ dnl failed, restore LIBS
|
||||||
|
LIBS=$my_ac_save_LIBS
|
||||||
|
AC_MSG_RESULT(no)]
|
||||||
|
)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
case "$OPT_SSL" in
|
case "$OPT_SSL" in
|
||||||
yes)
|
yes)
|
||||||
dnl --with-ssl (without path) used
|
dnl --with-ssl (without path) used
|
||||||
@@ -1475,24 +1495,6 @@ if test "$curl_ssl_msg" = "$init_ssl_msg" && test X"$OPT_SSL" != Xno; then
|
|||||||
CPPFLAGS="$CPPFLAGS $SSL_CPPFLAGS"
|
CPPFLAGS="$CPPFLAGS $SSL_CPPFLAGS"
|
||||||
LDFLAGS="$LDFLAGS $SSL_LDFLAGS"
|
LDFLAGS="$LDFLAGS $SSL_LDFLAGS"
|
||||||
|
|
||||||
dnl This is for Msys/Mingw
|
|
||||||
case $host in
|
|
||||||
*-*-msys* | *-*-mingw*)
|
|
||||||
AC_MSG_CHECKING([for gdi32])
|
|
||||||
my_ac_save_LIBS=$LIBS
|
|
||||||
LIBS="-lgdi32 $LIBS"
|
|
||||||
AC_TRY_LINK([#include <windef.h>
|
|
||||||
#include <wingdi.h>],
|
|
||||||
[GdiFlush();],
|
|
||||||
[ dnl worked!
|
|
||||||
AC_MSG_RESULT([yes])],
|
|
||||||
[ dnl failed, restore LIBS
|
|
||||||
LIBS=$my_ac_save_LIBS
|
|
||||||
AC_MSG_RESULT(no)]
|
|
||||||
)
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
AC_CHECK_LIB(crypto, HMAC_Update,[
|
AC_CHECK_LIB(crypto, HMAC_Update,[
|
||||||
HAVECRYPTO="yes"
|
HAVECRYPTO="yes"
|
||||||
LIBS="-lcrypto $LIBS"
|
LIBS="-lcrypto $LIBS"
|
||||||
@@ -1974,6 +1976,93 @@ if test "$curl_ssl_msg" = "$init_ssl_msg"; then
|
|||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
dnl ----------------------------------------------------
|
||||||
|
dnl check for mbedTLS
|
||||||
|
dnl ----------------------------------------------------
|
||||||
|
|
||||||
|
OPT_MBEDTLS=no
|
||||||
|
|
||||||
|
_cppflags=$CPPFLAGS
|
||||||
|
_ldflags=$LDFLAGS
|
||||||
|
AC_ARG_WITH(mbedtls,dnl
|
||||||
|
AC_HELP_STRING([--with-mbedtls=PATH],[where to look for mbedTLS, PATH points to the installation root])
|
||||||
|
AC_HELP_STRING([--without-mbedtls], [disable mbedTLS detection]),
|
||||||
|
OPT_MBEDTLS=$withval)
|
||||||
|
|
||||||
|
if test "$curl_ssl_msg" = "$init_ssl_msg"; then
|
||||||
|
|
||||||
|
if test X"$OPT_MBEDTLS" != Xno; then
|
||||||
|
|
||||||
|
if test "$OPT_MBEDTLS" = "yes"; then
|
||||||
|
OPT_MBEDTLS=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "$OPT_MBEDTLS" ; then
|
||||||
|
dnl check for lib first without setting any new path
|
||||||
|
|
||||||
|
AC_CHECK_LIB(mbedtls, mbedtls_havege_init,
|
||||||
|
dnl libmbedtls found, set the variable
|
||||||
|
[
|
||||||
|
AC_DEFINE(USE_MBEDTLS, 1, [if mbedTLS is enabled])
|
||||||
|
AC_SUBST(USE_MBEDTLS, [1])
|
||||||
|
MBEDTLS_ENABLED=1
|
||||||
|
USE_MBEDTLS="yes"
|
||||||
|
curl_ssl_msg="enabled (mbedTLS)"
|
||||||
|
], [], -lmbedx509 -lmbedcrypto)
|
||||||
|
fi
|
||||||
|
|
||||||
|
addld=""
|
||||||
|
addlib=""
|
||||||
|
addcflags=""
|
||||||
|
mbedtlslib=""
|
||||||
|
|
||||||
|
if test "x$USE_MBEDTLS" != "xyes"; then
|
||||||
|
dnl add the path and test again
|
||||||
|
addld=-L$OPT_MBEDTLS/lib$libsuff
|
||||||
|
addcflags=-I$OPT_MBEDTLS/include
|
||||||
|
mbedtlslib=$OPT_MBEDTLS/lib$libsuff
|
||||||
|
|
||||||
|
LDFLAGS="$LDFLAGS $addld"
|
||||||
|
if test "$addcflags" != "-I/usr/include"; then
|
||||||
|
CPPFLAGS="$CPPFLAGS $addcflags"
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_CHECK_LIB(mbedtls, mbedtls_ssl_init,
|
||||||
|
[
|
||||||
|
AC_DEFINE(USE_MBEDTLS, 1, [if mbedTLS is enabled])
|
||||||
|
AC_SUBST(USE_MBEDTLS, [1])
|
||||||
|
MBEDTLS_ENABLED=1
|
||||||
|
USE_MBEDTLS="yes"
|
||||||
|
curl_ssl_msg="enabled (mbedTLS)"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
CPPFLAGS=$_cppflags
|
||||||
|
LDFLAGS=$_ldflags
|
||||||
|
], -lmbedx509 -lmbedcrypto)
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "x$USE_MBEDTLS" = "xyes"; then
|
||||||
|
AC_MSG_NOTICE([detected mbedTLS])
|
||||||
|
|
||||||
|
LIBS="-lmbedtls -lmbedx509 -lmbedcrypto $LIBS"
|
||||||
|
|
||||||
|
if test -n "$mbedtlslib"; then
|
||||||
|
dnl when shared libs were found in a path that the run-time
|
||||||
|
dnl linker doesn't search through, we need to add it to
|
||||||
|
dnl LD_LIBRARY_PATH to prevent further configure tests to fail
|
||||||
|
dnl due to this
|
||||||
|
if test "x$cross_compiling" != "xyes"; then
|
||||||
|
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$mbedtlslib"
|
||||||
|
export LD_LIBRARY_PATH
|
||||||
|
AC_MSG_NOTICE([Added $mbedtlslib to LD_LIBRARY_PATH])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi dnl mbedTLS not disabled
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
dnl ----------------------------------------------------
|
dnl ----------------------------------------------------
|
||||||
dnl check for CyaSSL
|
dnl check for CyaSSL
|
||||||
dnl ----------------------------------------------------
|
dnl ----------------------------------------------------
|
||||||
@@ -2298,7 +2387,7 @@ if test "$curl_ssl_msg" = "$init_ssl_msg"; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$POLARSSL_ENABLED$AXTLS_ENABLED$CYASSL_ENABLED$WINSSL_ENABLED$DARWINSSL_ENABLED" = "x"; then
|
if test "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$POLARSSL_ENABLED$MBEDTLS_ENABLED$AXTLS_ENABLED$CYASSL_ENABLED$WINSSL_ENABLED$DARWINSSL_ENABLED" = "x"; then
|
||||||
AC_MSG_WARN([SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more.])
|
AC_MSG_WARN([SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more.])
|
||||||
AC_MSG_WARN([Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, or --with-darwinssl to address this.])
|
AC_MSG_WARN([Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, or --with-darwinssl to address this.])
|
||||||
else
|
else
|
||||||
@@ -2313,6 +2402,27 @@ dnl **********************************************************************
|
|||||||
|
|
||||||
CURL_CHECK_CA_BUNDLE
|
CURL_CHECK_CA_BUNDLE
|
||||||
|
|
||||||
|
dnl **********************************************************************
|
||||||
|
dnl Check for libpsl
|
||||||
|
dnl **********************************************************************
|
||||||
|
|
||||||
|
AC_ARG_WITH(libpsl,
|
||||||
|
AS_HELP_STRING([--without-libpsl],
|
||||||
|
[disable support for libpsl cookie checking]),
|
||||||
|
with_libpsl=$withval,
|
||||||
|
with_libpsl=yes)
|
||||||
|
if test $with_libpsl != "no"; then
|
||||||
|
AC_SEARCH_LIBS(psl_builtin, psl,
|
||||||
|
[curl_psl_msg="yes";
|
||||||
|
AC_DEFINE([USE_LIBPSL], [1], [PSL support enabled])
|
||||||
|
],
|
||||||
|
[curl_psl_msg="no (libpsl not found)";
|
||||||
|
AC_MSG_WARN([libpsl was not found])
|
||||||
|
]
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
AM_CONDITIONAL([USE_LIBPSL], [test "$curl_psl_msg" = "yes"])
|
||||||
|
|
||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
dnl Check for libmetalink
|
dnl Check for libmetalink
|
||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
@@ -2920,6 +3030,31 @@ if test X"$want_h2" != Xno; then
|
|||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
dnl **********************************************************************
|
||||||
|
dnl Check for zsh completion path
|
||||||
|
dnl **********************************************************************
|
||||||
|
|
||||||
|
OPT_ZSH_FPATH=default
|
||||||
|
AC_ARG_WITH(zsh-functions-dir,
|
||||||
|
AC_HELP_STRING([--with-zsh-functions-dir=PATH],[Install zsh completions to PATH])
|
||||||
|
AC_HELP_STRING([--without-zsh-functions-dir],[Do not install zsh completions]),
|
||||||
|
[OPT_ZSH_FPATH=$withval])
|
||||||
|
case "$OPT_ZSH_FPATH" in
|
||||||
|
no)
|
||||||
|
dnl --without-zsh-functions-dir option used
|
||||||
|
;;
|
||||||
|
default|yes)
|
||||||
|
dnl --with-zsh-functions-dir option used without path
|
||||||
|
ZSH_FUNCTIONS_DIR="$datarootdir/zsh/site-functions"
|
||||||
|
AC_SUBST(ZSH_FUNCTIONS_DIR)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
dnl --with-zsh-functions-dir option used with path
|
||||||
|
ZSH_FUNCTIONS_DIR="$withval"
|
||||||
|
AC_SUBST(ZSH_FUNCTIONS_DIR)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
dnl Back to "normal" configuring
|
dnl Back to "normal" configuring
|
||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
@@ -3536,6 +3671,10 @@ if test "x$HAVE_GSSAPI" = "x1"; then
|
|||||||
SUPPORT_FEATURES="$SUPPORT_FEATURES GSS-API"
|
SUPPORT_FEATURES="$SUPPORT_FEATURES GSS-API"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test "x$curl_psl_msg" = "xyes"; then
|
||||||
|
SUPPORT_FEATURES="$SUPPORT_FEATURES PSL"
|
||||||
|
fi
|
||||||
|
|
||||||
if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" -a \
|
if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" -a \
|
||||||
\( "x$HAVE_GSSAPI" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \); then
|
\( "x$HAVE_GSSAPI" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \); then
|
||||||
SUPPORT_FEATURES="$SUPPORT_FEATURES SPNEGO"
|
SUPPORT_FEATURES="$SUPPORT_FEATURES SPNEGO"
|
||||||
@@ -3683,6 +3822,7 @@ AC_CONFIG_FILES([Makefile \
|
|||||||
include/curl/Makefile \
|
include/curl/Makefile \
|
||||||
src/Makefile \
|
src/Makefile \
|
||||||
lib/Makefile \
|
lib/Makefile \
|
||||||
|
scripts/Makefile \
|
||||||
lib/libcurl.vers \
|
lib/libcurl.vers \
|
||||||
tests/Makefile \
|
tests/Makefile \
|
||||||
tests/certs/Makefile \
|
tests/certs/Makefile \
|
||||||
@@ -3741,6 +3881,7 @@ AC_MSG_NOTICE([Configured to build curl/libcurl:
|
|||||||
RTSP support: ${curl_rtsp_msg}
|
RTSP support: ${curl_rtsp_msg}
|
||||||
RTMP support: ${curl_rtmp_msg}
|
RTMP support: ${curl_rtmp_msg}
|
||||||
metalink support: ${curl_mtlnk_msg}
|
metalink support: ${curl_mtlnk_msg}
|
||||||
|
PSL support: ${curl_psl_msg}
|
||||||
HTTP2 support: ${curl_h2_msg}
|
HTTP2 support: ${curl_h2_msg}
|
||||||
Protocols: ${SUPPORT_PROTOCOLS}
|
Protocols: ${SUPPORT_PROTOCOLS}
|
||||||
])
|
])
|
||||||
|
|||||||
@@ -1,176 +0,0 @@
|
|||||||
Date: February 11, 2007
|
|
||||||
Author: Daniel Stenberg <daniel@haxx.se>
|
|
||||||
URL: http://curl.haxx.se/legal/distro-dilemma.html
|
|
||||||
|
|
||||||
Condition
|
|
||||||
|
|
||||||
This document is written to describe the situation as it is right now.
|
|
||||||
libcurl 7.16.1 is currently the latest version available. Things may of
|
|
||||||
course change in the future.
|
|
||||||
|
|
||||||
This document reflects my view and understanding of these things. Please tell
|
|
||||||
me where and how you think I'm wrong, and I'll try to correct my mistakes.
|
|
||||||
|
|
||||||
Background
|
|
||||||
|
|
||||||
The Free Software Foundation has deemed the Original BSD license[1] to be
|
|
||||||
"incompatible"[2] with GPL[3]. I'd rather say it is the other way around, but
|
|
||||||
the point is the same: if you distribute a binary version of a GPL program,
|
|
||||||
it MUST NOT be linked with any Original BSD-licensed parts or libraries.
|
|
||||||
Doing so will violate the GPL license. For a long time, very many GPL
|
|
||||||
licensed programs have avoided this license mess by adding an exception[8] to
|
|
||||||
their license. And many others have just closed their eyes for this problem.
|
|
||||||
|
|
||||||
libcurl is MIT-style[4] licensed - how on earth did this dilemma fall onto
|
|
||||||
our plates?
|
|
||||||
|
|
||||||
libcurl is only a little library. libcurl can be built to use OpenSSL for its
|
|
||||||
SSL/TLS capabilities. OpenSSL is basically Original BSD licensed[5].
|
|
||||||
|
|
||||||
If libcurl built to use OpenSSL is used by a GPL-licensed application and you
|
|
||||||
decide to distribute a binary version of it (Linux distros - for example -
|
|
||||||
tend to), you have a clash. GPL vs Original BSD.
|
|
||||||
|
|
||||||
This dilemma is not libcurl-specific nor is it specific to any particular
|
|
||||||
Linux distro. (This article mentions and refers to Debian several times, but
|
|
||||||
only because Debian seems to be the only Linux distro to have faced this
|
|
||||||
issue yet since no other distro is shipping libcurl built with two SSL
|
|
||||||
libraries.)
|
|
||||||
|
|
||||||
Part of the Operating System
|
|
||||||
|
|
||||||
This would not be a problem if the used lib would be considered part of the
|
|
||||||
underlying operating system, as then the GPL license has an exception
|
|
||||||
clause[6] that allows applications to use such libs without having to be
|
|
||||||
allowed to distribute it or its sources. Possibly some distros will claim
|
|
||||||
that OpenSSL is part of their operating system.
|
|
||||||
|
|
||||||
Debian does however not take this stance and has officially(?) claimed that
|
|
||||||
OpenSSL is not a required part of the Debian operating system
|
|
||||||
|
|
||||||
Some people claim that this paragraph cannot be exploited this way by a Linux
|
|
||||||
distro, but I am not a lawyer and that is a discussion left outside of this
|
|
||||||
document.
|
|
||||||
|
|
||||||
GnuTLS
|
|
||||||
|
|
||||||
Since May 2005 libcurl can get built to use GnuTLS instead of OpenSSL. GnuTLS
|
|
||||||
is an LGPL[7] licensed library that offers a matching set of features as
|
|
||||||
OpenSSL does. Now, you can build and distribute an TLS/SSL capable libcurl
|
|
||||||
without including any Original BSD licensed code.
|
|
||||||
|
|
||||||
I believe Debian is the first (only?) distro that provides libcurl/GnuTLS
|
|
||||||
packages.
|
|
||||||
|
|
||||||
yassl
|
|
||||||
|
|
||||||
libcurl can get also get built to use yassl for the TLS/SSL layer. yassl is a
|
|
||||||
GPL[3] licensed library.
|
|
||||||
|
|
||||||
|
|
||||||
GnuTLS vs OpenSSL vs yassl
|
|
||||||
|
|
||||||
While these three libraries offer similar features, they are not equal.
|
|
||||||
libcurl does not (yet) offer a standardized stable ABI if you decide to
|
|
||||||
switch from using libcurl-openssl to libcurl-gnutls or vice-versa. The GnuTLS
|
|
||||||
and yassl support is very recent in libcurl and it has not been tested nor
|
|
||||||
used very extensively, while the OpenSSL equivalent code has been used and
|
|
||||||
thus matured since 1999.
|
|
||||||
|
|
||||||
GnuTLS
|
|
||||||
- LGPL licensed
|
|
||||||
- supports SRP
|
|
||||||
- lacks SSLv2 support
|
|
||||||
- lacks MD2 support (used by at least some CA certs)
|
|
||||||
- lacks the crypto functions libcurl uses for NTLM
|
|
||||||
|
|
||||||
OpenSSL
|
|
||||||
- Original BSD licensed
|
|
||||||
- lacks SRP
|
|
||||||
- supports SSLv2
|
|
||||||
- older and more widely used
|
|
||||||
- provides crypto functions libcurl uses for NTLM
|
|
||||||
- libcurl can do non-blocking connects with it in 7.15.4 and later
|
|
||||||
|
|
||||||
yassl
|
|
||||||
- GPL licensed
|
|
||||||
- much untested and unproven in the real work by (lib)curl users so we don't
|
|
||||||
know a lot about restrictions or benefits from using this
|
|
||||||
|
|
||||||
The Better License, Original BSD, GPL or LGPL?
|
|
||||||
|
|
||||||
It isn't obvious or without debate to any objective interested party that
|
|
||||||
either of these licenses are the "better" or even the "preferred" one in a
|
|
||||||
generic situation.
|
|
||||||
|
|
||||||
Instead, I think we should accept the fact that the SSL/TLS libraries and
|
|
||||||
their different licenses will fit different applications and their authors
|
|
||||||
differently depending on the applications' licenses and their general usage
|
|
||||||
pattern (considering how GPL and LGPL libraries for example can be burdensome
|
|
||||||
for embedded systems usage).
|
|
||||||
|
|
||||||
In Debian land, there seems to be a common opinion that LGPL is "maximally
|
|
||||||
compatible" with apps while Original BSD is not. Like this:
|
|
||||||
|
|
||||||
https://lists.debian.org/debian-devel/2005/09/msg01417.html
|
|
||||||
|
|
||||||
More SSL Libraries
|
|
||||||
|
|
||||||
In libcurl, there's no stopping us here. There are more Open Source/Free
|
|
||||||
SSL/TLS libraries out there and we would very much like to support them as
|
|
||||||
well, to offer application authors an even wider scope of choice.
|
|
||||||
|
|
||||||
Application Angle of this Problem
|
|
||||||
|
|
||||||
libcurl is built to use one SSL/TLS library. It uses a single fixed name (by
|
|
||||||
default) on the built/created lib file, and applications are built/linked to
|
|
||||||
use that single lib. Replacing one libcurl instance with another one that
|
|
||||||
uses the other SSL/TLS library might break one or more applications (due to
|
|
||||||
ABI differences and/or different feature set). You want your application to
|
|
||||||
use the libcurl it was built for.
|
|
||||||
|
|
||||||
Project cURL Angle of this Problem
|
|
||||||
|
|
||||||
We distribute libcurl and everyone may build libcurl with either library at
|
|
||||||
their choice. This problem is not directly a problem of ours. It merely
|
|
||||||
affects users - GPL application authors only - of our lib as it comes
|
|
||||||
included and delivered on some distros.
|
|
||||||
|
|
||||||
libcurl has different ABI when built with different SSL/TLS libraries due to
|
|
||||||
these reasons:
|
|
||||||
|
|
||||||
1. No one has worked on fixing this. The mutex/lock callbacks should be set
|
|
||||||
with a generic libcurl function that should use the proper underlying
|
|
||||||
functions.
|
|
||||||
|
|
||||||
2. The CURLOPT_SSL_CTX_FUNCTION option is not possible to "emulate" on GnuTLS
|
|
||||||
but simply requires OpenSSL.
|
|
||||||
|
|
||||||
3. There might be some other subtle differences just because nobody has yet
|
|
||||||
tried to make a fixed ABI like this.
|
|
||||||
|
|
||||||
Distro Angle of this Problem
|
|
||||||
|
|
||||||
To my knowledge there is only one distro that ships libcurl built with either
|
|
||||||
OpenSSL or GnuTLS.
|
|
||||||
|
|
||||||
Debian Linux is now (since mid September 2005) providing two different
|
|
||||||
libcurl packages, one for libcurl built with OpenSSL and one built with
|
|
||||||
GnuTLS. They use different .so names and can this both be installed in a
|
|
||||||
single system simultaneously. This has been said to be a transitional system
|
|
||||||
not desired to keep in the long run.
|
|
||||||
|
|
||||||
Footnotes
|
|
||||||
|
|
||||||
[1] = http://www.xfree86.org/3.3.6/COPYRIGHT2.html#6
|
|
||||||
[2] = https://www.gnu.org/philosophy/bsd.html
|
|
||||||
[3] = https://www.gnu.org/licenses/gpl.html
|
|
||||||
[4] = http://curl.haxx.se/docs/copyright.html
|
|
||||||
[5] = https://www.openssl.org/source/license.html
|
|
||||||
[6] = https://www.gnu.org/licenses/gpl.html end of section 3
|
|
||||||
[7] = https://www.gnu.org/licenses/lgpl.html
|
|
||||||
[8] = https://en.wikipedia.org/wiki/OpenSSL_exception
|
|
||||||
|
|
||||||
Feedback/Updates provided by
|
|
||||||
|
|
||||||
Eric Cooper
|
|
||||||
12
docs/FAQ
12
docs/FAQ
@@ -1536,9 +1536,7 @@ FAQ
|
|||||||
|
|
||||||
7.2 Who wrote PHP/CURL?
|
7.2 Who wrote PHP/CURL?
|
||||||
|
|
||||||
PHP/CURL is a module that comes with the regular PHP package. It depends and
|
PHP/CURL was initially written by Sterling Hughes.
|
||||||
uses libcurl, so you need to have libcurl installed properly first before
|
|
||||||
PHP/CURL can be used. PHP/CURL was initially written by Sterling Hughes.
|
|
||||||
|
|
||||||
7.3 Can I perform multiple requests using the same handle?
|
7.3 Can I perform multiple requests using the same handle?
|
||||||
|
|
||||||
@@ -1547,4 +1545,10 @@ FAQ
|
|||||||
unknown to me).
|
unknown to me).
|
||||||
|
|
||||||
After a transfer, you just set new options in the handle and make another
|
After a transfer, you just set new options in the handle and make another
|
||||||
transfer. This will make libcurl to re-use the same connection if it can.
|
transfer. This will make libcurl re-use the same connection if it can.
|
||||||
|
|
||||||
|
7.4 Does PHP/CURL have dependencies?
|
||||||
|
|
||||||
|
PHP/CURL is a module that comes with the regular PHP package. It depends on
|
||||||
|
and uses libcurl, so you need to have libcurl installed properly before
|
||||||
|
PHP/CURL can be used.
|
||||||
|
|||||||
15
docs/INSTALL
15
docs/INSTALL
@@ -950,9 +950,10 @@ REDUCING SIZE
|
|||||||
important factor. First, be sure to set the CFLAGS variable when
|
important factor. First, be sure to set the CFLAGS variable when
|
||||||
configuring with any relevant compiler optimization flags to reduce the
|
configuring with any relevant compiler optimization flags to reduce the
|
||||||
size of the binary. For gcc, this would mean at minimum the -Os option,
|
size of the binary. For gcc, this would mean at minimum the -Os option,
|
||||||
and potentially the -march=X and -mdynamic-no-pic options as well, e.g.
|
and potentially the -march=X, -mdynamic-no-pic and -flto options as well,
|
||||||
|
e.g.
|
||||||
|
|
||||||
./configure CFLAGS='-Os' ...
|
./configure CFLAGS='-Os' LDFLAGS='-Wl,-Bsymbolic'...
|
||||||
|
|
||||||
Note that newer compilers often produce smaller code than older versions
|
Note that newer compilers often produce smaller code than older versions
|
||||||
due to improved optimization.
|
due to improved optimization.
|
||||||
@@ -970,7 +971,9 @@ REDUCING SIZE
|
|||||||
--disable-ipv6 (disables support for IPv6)
|
--disable-ipv6 (disables support for IPv6)
|
||||||
--disable-manual (disables support for the built-in documentation)
|
--disable-manual (disables support for the built-in documentation)
|
||||||
--disable-proxy (disables support for HTTP and SOCKS proxies)
|
--disable-proxy (disables support for HTTP and SOCKS proxies)
|
||||||
|
--disable-unix-sockets (disables support for UNIX sockets)
|
||||||
--disable-verbose (eliminates debugging strings and error code strings)
|
--disable-verbose (eliminates debugging strings and error code strings)
|
||||||
|
--disable-versioned-symbols (disables support for versioned symbols)
|
||||||
--enable-hidden-symbols (eliminates unneeded symbols in the shared library)
|
--enable-hidden-symbols (eliminates unneeded symbols in the shared library)
|
||||||
--without-libidn (disables support for the libidn DNS library)
|
--without-libidn (disables support for the libidn DNS library)
|
||||||
--without-librtmp (disables support for RTMP)
|
--without-librtmp (disables support for RTMP)
|
||||||
@@ -983,7 +986,7 @@ REDUCING SIZE
|
|||||||
configure command-line, e.g.
|
configure command-line, e.g.
|
||||||
|
|
||||||
CFLAGS="-Os -ffunction-sections -fdata-sections \
|
CFLAGS="-Os -ffunction-sections -fdata-sections \
|
||||||
-fno-unwind-tables -fno-asynchronous-unwind-tables" \
|
-fno-unwind-tables -fno-asynchronous-unwind-tables -flto" \
|
||||||
LDFLAGS="-Wl,-s -Wl,-Bsymbolic -Wl,--gc-sections"
|
LDFLAGS="-Wl,-s -Wl,-Bsymbolic -Wl,--gc-sections"
|
||||||
|
|
||||||
Be sure also to strip debugging symbols from your binaries after
|
Be sure also to strip debugging symbols from your binaries after
|
||||||
@@ -993,9 +996,9 @@ REDUCING SIZE
|
|||||||
.comment section).
|
.comment section).
|
||||||
|
|
||||||
Using these techniques it is possible to create a basic HTTP-only shared
|
Using these techniques it is possible to create a basic HTTP-only shared
|
||||||
libcurl library for i386 Linux platforms that is only 114 KiB in size, and
|
libcurl library for i386 Linux platforms that is only 109 KiB in size, and
|
||||||
an FTP-only library that is 115 KiB in size (as of libcurl version 7.35.0,
|
an FTP-only library that is 109 KiB in size (as of libcurl version 7.45.0,
|
||||||
using gcc 4.8.2).
|
using gcc 4.9.2).
|
||||||
|
|
||||||
You may find that statically linking libcurl to your application will
|
You may find that statically linking libcurl to your application will
|
||||||
result in a lower total size than dynamically linking.
|
result in a lower total size than dynamically linking.
|
||||||
|
|||||||
@@ -33,22 +33,22 @@ SUBDIRS = examples libcurl
|
|||||||
|
|
||||||
CLEANFILES = $(GENHTMLPAGES) $(PDFPAGES)
|
CLEANFILES = $(GENHTMLPAGES) $(PDFPAGES)
|
||||||
|
|
||||||
EXTRA_DIST = MANUAL BUGS CONTRIBUTE FAQ FEATURES INTERNALS SSLCERTS \
|
EXTRA_DIST = MANUAL BUGS CONTRIBUTE FAQ FEATURES INTERNALS SSLCERTS \
|
||||||
README.win32 RESOURCES TODO TheArtOfHttpScripting THANKS VERSIONS \
|
README.win32 RESOURCES TODO TheArtOfHttpScripting THANKS VERSIONS \
|
||||||
KNOWN_BUGS BINDINGS $(man_MANS) $(HTMLPAGES) HISTORY INSTALL \
|
KNOWN_BUGS BINDINGS $(man_MANS) $(HTMLPAGES) HISTORY INSTALL \
|
||||||
$(PDFPAGES) LICENSE-MIXING README.netware DISTRO-DILEMMA INSTALL.devcpp \
|
$(PDFPAGES) LICENSE-MIXING README.netware INSTALL.devcpp \
|
||||||
MAIL-ETIQUETTE HTTP-COOKIES SECURITY RELEASE-PROCEDURE \
|
MAIL-ETIQUETTE HTTP-COOKIES SECURITY RELEASE-PROCEDURE SSL-PROBLEMS \
|
||||||
SSL-PROBLEMS HTTP2.md ROADMAP.md CODE_OF_CONDUCT.md
|
HTTP2.md ROADMAP.md CODE_OF_CONDUCT.md
|
||||||
|
|
||||||
MAN2HTML= roffit < $< >$@
|
MAN2HTML= roffit < $< >$@
|
||||||
|
|
||||||
SUFFIXES = .1 .html .pdf
|
SUFFIXES = .1 .html .pdf
|
||||||
|
|
||||||
html: $(HTMLPAGES)
|
html: $(HTMLPAGES)
|
||||||
cd libcurl; make html
|
cd libcurl && make html
|
||||||
|
|
||||||
pdf: $(PDFPAGES)
|
pdf: $(PDFPAGES)
|
||||||
cd libcurl; make pdf
|
cd libcurl && make pdf
|
||||||
|
|
||||||
.1.html:
|
.1.html:
|
||||||
$(MAN2HTML)
|
$(MAN2HTML)
|
||||||
|
|||||||
@@ -24,6 +24,8 @@ in the source code repo
|
|||||||
|
|
||||||
- upload the 8 resulting files to the primary download directory
|
- upload the 8 resulting files to the primary download directory
|
||||||
|
|
||||||
|
- upload the 4 tarballs to github for the HTTPS download
|
||||||
|
|
||||||
in the curl-www repo
|
in the curl-www repo
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
@@ -78,9 +80,7 @@ Coming dates
|
|||||||
Based on the description above, here are some planned release dates (at the
|
Based on the description above, here are some planned release dates (at the
|
||||||
time of this writing):
|
time of this writing):
|
||||||
|
|
||||||
- June 17, 2015 (version 7.43.0)
|
- October 7, 2015 (version 7.45.0)
|
||||||
- August 12, 2015
|
|
||||||
- October 7, 2015
|
|
||||||
- December 2, 2015
|
- December 2, 2015
|
||||||
- January 27, 2016
|
- January 27, 2016
|
||||||
- March 23, 2016
|
- March 23, 2016
|
||||||
|
|||||||
@@ -18,20 +18,6 @@ HTTP/2
|
|||||||
To decide: if we need to bundle parts of the nghttp2 stuff that probably
|
To decide: if we need to bundle parts of the nghttp2 stuff that probably
|
||||||
won't be shipped by many distros.
|
won't be shipped by many distros.
|
||||||
|
|
||||||
- stream properties API
|
|
||||||
|
|
||||||
Provide options for setting priorities and dependencies among the streams
|
|
||||||
(easy handles). They are mostly information set for the stream and sent to
|
|
||||||
the server so we don't have to add much logic for this.
|
|
||||||
|
|
||||||
- server push
|
|
||||||
|
|
||||||
Not exactly clear exactly how to support this API-wise, but by adding
|
|
||||||
handles without asking for a resource it could be a way to be prepared to
|
|
||||||
receive pushes in case such are sent. We probably need it to still specify
|
|
||||||
a URL with host name, port etc but we probably need a special option to
|
|
||||||
tell libcurl it is for server push purposes.
|
|
||||||
|
|
||||||
- provide option for HTTP/2 "prior knowledge" over clear text
|
- provide option for HTTP/2 "prior knowledge" over clear text
|
||||||
|
|
||||||
As it would avoid the roundtrip-heavy Upgrade: procedures when you _know_
|
As it would avoid the roundtrip-heavy Upgrade: procedures when you _know_
|
||||||
@@ -117,7 +103,7 @@ Improve
|
|||||||
|
|
||||||
2. curl -h output (considered overwhelming to users)
|
2. curl -h output (considered overwhelming to users)
|
||||||
|
|
||||||
3. we have > 160 command line options, is there a way to redo things to
|
3. we have > 170 command line options, is there a way to redo things to
|
||||||
simplify or improve the situation as we are likely to keep adding
|
simplify or improve the situation as we are likely to keep adding
|
||||||
features/options in the future too
|
features/options in the future too
|
||||||
|
|
||||||
|
|||||||
20
docs/THANKS
20
docs/THANKS
@@ -262,6 +262,7 @@ Daniel Lee Hwang
|
|||||||
Daniel Melani
|
Daniel Melani
|
||||||
Daniel Mentz
|
Daniel Mentz
|
||||||
Daniel Seither
|
Daniel Seither
|
||||||
|
Daniel Shahaf
|
||||||
Daniel Steinberg
|
Daniel Steinberg
|
||||||
Daniel Stenberg
|
Daniel Stenberg
|
||||||
Daniel Theron
|
Daniel Theron
|
||||||
@@ -275,6 +276,7 @@ Dave May
|
|||||||
Dave Reisner
|
Dave Reisner
|
||||||
Dave Thompson
|
Dave Thompson
|
||||||
Dave Vasilevsky
|
Dave Vasilevsky
|
||||||
|
Davey Shafik
|
||||||
David Bau
|
David Bau
|
||||||
David Binderman
|
David Binderman
|
||||||
David Blaikie
|
David Blaikie
|
||||||
@@ -328,12 +330,14 @@ Dmitry Falko
|
|||||||
Dmitry Kurochkin
|
Dmitry Kurochkin
|
||||||
Dmitry Popov
|
Dmitry Popov
|
||||||
Dmitry Rechkin
|
Dmitry Rechkin
|
||||||
|
Dmitry S. Baikov
|
||||||
Dolbneff A.V
|
Dolbneff A.V
|
||||||
Domenico Andreoli
|
Domenico Andreoli
|
||||||
Dominick Meglio
|
Dominick Meglio
|
||||||
Dominique Leuenberger
|
Dominique Leuenberger
|
||||||
Doug Kaufman
|
Doug Kaufman
|
||||||
Doug Porter
|
Doug Porter
|
||||||
|
Douglas Creager
|
||||||
Douglas E. Wegscheid
|
Douglas E. Wegscheid
|
||||||
Douglas Kilpatrick
|
Douglas Kilpatrick
|
||||||
Douglas R. Horner
|
Douglas R. Horner
|
||||||
@@ -398,6 +402,7 @@ Feist Josselin
|
|||||||
Felix Yan
|
Felix Yan
|
||||||
Felix von Leitner
|
Felix von Leitner
|
||||||
Feng Tu
|
Feng Tu
|
||||||
|
Flavio Medeiros
|
||||||
Florian Schoppmann
|
Florian Schoppmann
|
||||||
Florian Weimer
|
Florian Weimer
|
||||||
Forrest Cahoon
|
Forrest Cahoon
|
||||||
@@ -549,6 +554,7 @@ Jason Liu
|
|||||||
Jason McDonald
|
Jason McDonald
|
||||||
Jason S. Priebe
|
Jason S. Priebe
|
||||||
Javier Barroso
|
Javier Barroso
|
||||||
|
Javier G. Sogo
|
||||||
Jay Austin
|
Jay Austin
|
||||||
Jayesh A Shah
|
Jayesh A Shah
|
||||||
Jaz Fresh
|
Jaz Fresh
|
||||||
@@ -615,6 +621,7 @@ John Janssen
|
|||||||
John Joseph Bachir
|
John Joseph Bachir
|
||||||
John Kelly
|
John Kelly
|
||||||
John Lask
|
John Lask
|
||||||
|
John Levon
|
||||||
John Lightsey
|
John Lightsey
|
||||||
John Marino
|
John Marino
|
||||||
John Marshall
|
John Marshall
|
||||||
@@ -633,6 +640,7 @@ Jon Torrey
|
|||||||
Jon Travis
|
Jon Travis
|
||||||
Jon Turner
|
Jon Turner
|
||||||
Jonas Forsman
|
Jonas Forsman
|
||||||
|
Jonas Minnberg
|
||||||
Jonas Schnelli
|
Jonas Schnelli
|
||||||
Jonatan Lander
|
Jonatan Lander
|
||||||
Jonatan Vela
|
Jonatan Vela
|
||||||
@@ -661,6 +669,7 @@ Julien Nabet
|
|||||||
Julien Royer
|
Julien Royer
|
||||||
Jun-ichiro itojun Hagino
|
Jun-ichiro itojun Hagino
|
||||||
Jurij Smakov
|
Jurij Smakov
|
||||||
|
Justin Ehlert
|
||||||
Justin Fletcher
|
Justin Fletcher
|
||||||
Justin Karneges
|
Justin Karneges
|
||||||
Justin Maggard
|
Justin Maggard
|
||||||
@@ -672,6 +681,7 @@ Kai Sommerfeld
|
|||||||
Kai-Uwe Rommel
|
Kai-Uwe Rommel
|
||||||
Kalle Vahlman
|
Kalle Vahlman
|
||||||
Kamil Dudka
|
Kamil Dudka
|
||||||
|
Kang Lin
|
||||||
Kang-Jin Lee
|
Kang-Jin Lee
|
||||||
Karl Moerder
|
Karl Moerder
|
||||||
Karol Pietrzak
|
Karol Pietrzak
|
||||||
@@ -703,6 +713,7 @@ Krishnendu Majumdar
|
|||||||
Krister Johansen
|
Krister Johansen
|
||||||
Kristian Gunstone
|
Kristian Gunstone
|
||||||
Kristian Köhntopp
|
Kristian Köhntopp
|
||||||
|
Kurt Fankhauser
|
||||||
Kyle J. McKay
|
Kyle J. McKay
|
||||||
Kyle L. Huff
|
Kyle L. Huff
|
||||||
Kyle Sallee
|
Kyle Sallee
|
||||||
@@ -719,6 +730,7 @@ Lars Nilsson
|
|||||||
Lars Torben Wilson
|
Lars Torben Wilson
|
||||||
Lau Hang Kin
|
Lau Hang Kin
|
||||||
Laurent Rabret
|
Laurent Rabret
|
||||||
|
Lauri Kasanen
|
||||||
Legoff Vincent
|
Legoff Vincent
|
||||||
Lehel Bernadt
|
Lehel Bernadt
|
||||||
Leif W
|
Leif W
|
||||||
@@ -747,6 +759,7 @@ Lucas Adamski
|
|||||||
Lucas Pardue
|
Lucas Pardue
|
||||||
Ludek Finstrle
|
Ludek Finstrle
|
||||||
Ludovico Cavedon
|
Ludovico Cavedon
|
||||||
|
Lukas Ruzicka
|
||||||
Lukasz Czekierda
|
Lukasz Czekierda
|
||||||
Luke Amery
|
Luke Amery
|
||||||
Luke Call
|
Luke Call
|
||||||
@@ -855,6 +868,7 @@ Michal Marek
|
|||||||
Michał Fita
|
Michał Fita
|
||||||
Michał Górny
|
Michał Górny
|
||||||
Michał Kowalczyk
|
Michał Kowalczyk
|
||||||
|
Michał Piechowski
|
||||||
Michel Promonet
|
Michel Promonet
|
||||||
Michele Bini
|
Michele Bini
|
||||||
Miguel Angel
|
Miguel Angel
|
||||||
@@ -913,6 +927,7 @@ Nis Jorgensen
|
|||||||
Nobuhiro Ban
|
Nobuhiro Ban
|
||||||
Nodak Sodak
|
Nodak Sodak
|
||||||
Norbert Frese
|
Norbert Frese
|
||||||
|
Norbert Kett
|
||||||
Norbert Novotny
|
Norbert Novotny
|
||||||
Ofer
|
Ofer
|
||||||
Ola Mork
|
Ola Mork
|
||||||
@@ -1049,6 +1064,7 @@ Richard Bramante
|
|||||||
Richard Clayton
|
Richard Clayton
|
||||||
Richard Cooper
|
Richard Cooper
|
||||||
Richard Gorton
|
Richard Gorton
|
||||||
|
Richard Hosking
|
||||||
Richard Michael
|
Richard Michael
|
||||||
Richard Moore
|
Richard Moore
|
||||||
Richard Prescott
|
Richard Prescott
|
||||||
@@ -1122,6 +1138,7 @@ Scott Cantor
|
|||||||
Scott Davis
|
Scott Davis
|
||||||
Scott McCreary
|
Scott McCreary
|
||||||
Sean Boudreau
|
Sean Boudreau
|
||||||
|
Sebastian Pohlschmidt
|
||||||
Sebastian Rasmussen
|
Sebastian Rasmussen
|
||||||
Senthil Raja Velu
|
Senthil Raja Velu
|
||||||
Sergei Nikulov
|
Sergei Nikulov
|
||||||
@@ -1213,7 +1230,7 @@ Tim Costello
|
|||||||
Tim Harder
|
Tim Harder
|
||||||
Tim Heckman
|
Tim Heckman
|
||||||
Tim Newsome
|
Tim Newsome
|
||||||
Tim Ruehsen
|
Tim Rühsen
|
||||||
Tim Sneddon
|
Tim Sneddon
|
||||||
Tim Stack
|
Tim Stack
|
||||||
Tim Starling
|
Tim Starling
|
||||||
@@ -1302,6 +1319,7 @@ Wojciech Zwiefka
|
|||||||
Wouter Van Rooy
|
Wouter Van Rooy
|
||||||
Wu Yongzheng
|
Wu Yongzheng
|
||||||
Xavier Bouchoux
|
Xavier Bouchoux
|
||||||
|
Xiangbin Li
|
||||||
Yaakov Selkowitz
|
Yaakov Selkowitz
|
||||||
Yamada Yasuharu
|
Yamada Yasuharu
|
||||||
Yang Tse
|
Yang Tse
|
||||||
|
|||||||
@@ -51,3 +51,4 @@ s/Viktor Szakats/Viktor Szakáts/
|
|||||||
s/Jonathan Cardoso/Jonathan Cardoso Machado/
|
s/Jonathan Cardoso/Jonathan Cardoso Machado/
|
||||||
s/Linus Nielsen/Linus Nielsen Feltzing/
|
s/Linus Nielsen/Linus Nielsen Feltzing/
|
||||||
s/Todd Ouska$/Todd A Ouska/
|
s/Todd Ouska$/Todd A Ouska/
|
||||||
|
s/Tim Ruehsen/Tim Rühsen/
|
||||||
|
|||||||
97
docs/TODO
97
docs/TODO
@@ -27,11 +27,16 @@
|
|||||||
1.9 Cache negative name resolves
|
1.9 Cache negative name resolves
|
||||||
1.10 Support IDNA2008
|
1.10 Support IDNA2008
|
||||||
1.11 minimize dependencies with dynamicly loaded modules
|
1.11 minimize dependencies with dynamicly loaded modules
|
||||||
|
1.12 have form functions use CURL handle argument
|
||||||
|
1.13 Add CURLOPT_MAIL_CLIENT option
|
||||||
|
1.14 Typesafe curl_easy_setopt()
|
||||||
|
1.15 TCP Fast Open
|
||||||
|
|
||||||
2. libcurl - multi interface
|
2. libcurl - multi interface
|
||||||
2.1 More non-blocking
|
2.1 More non-blocking
|
||||||
2.2 Fix HTTP Pipelining for PUT
|
2.2 Better support for same name resolves
|
||||||
2.3 Better support for same name resolves
|
2.3 Non-blocking curl_multi_remove_handle()
|
||||||
|
2.4 Split connect and authentication process
|
||||||
|
|
||||||
3. Documentation
|
3. Documentation
|
||||||
3.1 Update date and version in man pages
|
3.1 Update date and version in man pages
|
||||||
@@ -141,8 +146,6 @@
|
|||||||
21.6 remove CURLOPT_DNS_USE_GLOBAL_CACHE
|
21.6 remove CURLOPT_DNS_USE_GLOBAL_CACHE
|
||||||
21.7 remove progress meter from libcurl
|
21.7 remove progress meter from libcurl
|
||||||
21.8 remove 'curl_httppost' from public
|
21.8 remove 'curl_httppost' from public
|
||||||
21.9 have form functions use CURL handle argument
|
|
||||||
21.10 Add CURLOPT_MAIL_CLIENT option
|
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
@@ -236,6 +239,51 @@
|
|||||||
app/invoke/used protocols would be necessary to load. See
|
app/invoke/used protocols would be necessary to load. See
|
||||||
https://github.com/bagder/curl/issues/349
|
https://github.com/bagder/curl/issues/349
|
||||||
|
|
||||||
|
1.12 have form functions use CURL handle argument
|
||||||
|
|
||||||
|
curl_formadd() and curl_formget() both currently have no CURL handle
|
||||||
|
argument, but both can use a callback that is set in the easy handle, and
|
||||||
|
thus curl_formget() with callback cannot function without first having
|
||||||
|
curl_easy_perform() (or similar) called - which is hard to grasp and a design
|
||||||
|
mistake.
|
||||||
|
|
||||||
|
The curl_formadd() design can probably also be reconsidered to make it easier
|
||||||
|
to use and less error-prone. Probably easiest by splitting it into several
|
||||||
|
function calls.
|
||||||
|
|
||||||
|
1.13 Add CURLOPT_MAIL_CLIENT option
|
||||||
|
|
||||||
|
Rather than use the URL to specify the mail client string to present in the
|
||||||
|
HELO and EHLO commands, libcurl should support a new CURLOPT specifically for
|
||||||
|
specifying this data as the URL is non-standard and to be honest a bit of a
|
||||||
|
hack ;-)
|
||||||
|
|
||||||
|
Please see the following thread for more information:
|
||||||
|
http://curl.haxx.se/mail/lib-2012-05/0178.html
|
||||||
|
|
||||||
|
1.14 Typesafe curl_easy_setopt()
|
||||||
|
|
||||||
|
One of the most common problems in libcurl using applications is the lack of
|
||||||
|
type checks for curl_easy_setopt() which happens because it accepts varargs
|
||||||
|
and thus can take any type.
|
||||||
|
|
||||||
|
One possible solution to this is to introduce a few different versions of the
|
||||||
|
setopt version for the different kinds of data you can set.
|
||||||
|
|
||||||
|
curl_easy_set_num() - sets a long value
|
||||||
|
|
||||||
|
curl_easy_set_large() - sets a curl_off_t value
|
||||||
|
|
||||||
|
curl_easy_set_ptr() - sets a pointer
|
||||||
|
|
||||||
|
curl_easy_set_cb() - sets a callback PLUS its callback data
|
||||||
|
|
||||||
|
1.15 TCP Fast Open
|
||||||
|
|
||||||
|
RFC 7413 defines how to include data already in the TCP SYN handshake to
|
||||||
|
reduce latency.
|
||||||
|
|
||||||
|
|
||||||
2. libcurl - multi interface
|
2. libcurl - multi interface
|
||||||
|
|
||||||
2.1 More non-blocking
|
2.1 More non-blocking
|
||||||
@@ -252,13 +300,7 @@
|
|||||||
- The "DONE" operation (post transfer protocol-specific actions) for the
|
- The "DONE" operation (post transfer protocol-specific actions) for the
|
||||||
protocols SFTP, SMTP, FTP. Fixing Curl_done() for this is a worthy task.
|
protocols SFTP, SMTP, FTP. Fixing Curl_done() for this is a worthy task.
|
||||||
|
|
||||||
2.2 Fix HTTP Pipelining for PUT
|
2.2 Better support for same name resolves
|
||||||
|
|
||||||
HTTP Pipelining can be a way to greatly enhance performance for multiple
|
|
||||||
serial requests and currently libcurl only supports that for HEAD and GET
|
|
||||||
requests but it should also be possible for PUT.
|
|
||||||
|
|
||||||
2.3 Better support for same name resolves
|
|
||||||
|
|
||||||
If a name resolve has been initiated for name NN and a second easy handle
|
If a name resolve has been initiated for name NN and a second easy handle
|
||||||
wants to resolve that name as well, make it wait for the first resolve to end
|
wants to resolve that name as well, make it wait for the first resolve to end
|
||||||
@@ -266,6 +308,20 @@
|
|||||||
especially needed when adding many simultaneous handles using the same host
|
especially needed when adding many simultaneous handles using the same host
|
||||||
name when the DNS resolver can get flooded.
|
name when the DNS resolver can get flooded.
|
||||||
|
|
||||||
|
2.3 Non-blocking curl_multi_remove_handle()
|
||||||
|
|
||||||
|
The multi interface has a few API calls that assume a blocking behavior, like
|
||||||
|
add_handle() and remove_handle() which limits what we can do internally. The
|
||||||
|
multi API need to be moved even more into a single function that "drives"
|
||||||
|
everything in a non-blocking manner and signals when something is done. A
|
||||||
|
remove or add would then only ask for the action to get started and then
|
||||||
|
multi_perform() etc still be called until the add/remove is completed.
|
||||||
|
|
||||||
|
2.4 Split connect and authentication process
|
||||||
|
|
||||||
|
The multi interface treats the authentication process as part of the connect
|
||||||
|
phase. As such any failures during authentication won't trigger the relevant
|
||||||
|
QUIT or LOGOFF for protocols such as IMAP, POP3 and SMTP.
|
||||||
|
|
||||||
3. Documentation
|
3. Documentation
|
||||||
|
|
||||||
@@ -815,22 +871,3 @@ Currently the SMB authentication uses NTLMv1.
|
|||||||
|
|
||||||
Changing them to return a private handle will benefit the implementation and
|
Changing them to return a private handle will benefit the implementation and
|
||||||
allow us much greater freedoms while still maintaining a solid API and ABI.
|
allow us much greater freedoms while still maintaining a solid API and ABI.
|
||||||
|
|
||||||
21.9 have form functions use CURL handle argument
|
|
||||||
|
|
||||||
curl_formadd() and curl_formget() both currently have no CURL handle
|
|
||||||
argument, but both can use a callback that is set in the easy handle, and
|
|
||||||
thus curl_formget() with callback cannot function without first having
|
|
||||||
curl_easy_perform() (or similar) called - which is hard to grasp and a design
|
|
||||||
mistake.
|
|
||||||
|
|
||||||
21.10 Add CURLOPT_MAIL_CLIENT option
|
|
||||||
|
|
||||||
Rather than use the URL to specify the mail client string to present in the
|
|
||||||
HELO and EHLO commands, libcurl should support a new CURLOPT specifically for
|
|
||||||
specifying this data as the URL is non-standard and to be honest a bit of a
|
|
||||||
hack ;-)
|
|
||||||
|
|
||||||
Please see the following thread for more information:
|
|
||||||
http://curl.haxx.se/mail/lib-2012-05/0178.html
|
|
||||||
|
|
||||||
|
|||||||
25
docs/curl.1
25
docs/curl.1
@@ -488,10 +488,10 @@ If this option is used several times, the last one will be used.
|
|||||||
(SSL) Tells curl to use the specified client certificate file when getting a
|
(SSL) Tells curl to use the specified client certificate file when getting a
|
||||||
file with HTTPS, FTPS or another SSL-based protocol. The certificate must be
|
file with HTTPS, FTPS or another SSL-based protocol. The certificate must be
|
||||||
in PKCS#12 format if using Secure Transport, or PEM format if using any other
|
in PKCS#12 format if using Secure Transport, or PEM format if using any other
|
||||||
engine. If the optional password isn't specified, it will be queried
|
engine. If the optional password isn't specified, it will be queried for on
|
||||||
for on the terminal. Note that this option assumes a \&"certificate" file that
|
the terminal. Note that this option assumes a \&"certificate" file that is the
|
||||||
is the private key and the private certificate concatenated! See \fI--cert\fP
|
private key and the client certificate concatenated! See \fI--cert\fP and
|
||||||
and \fI--key\fP to specify them independently.
|
\fI--key\fP to specify them independently.
|
||||||
|
|
||||||
If curl is built against the NSS SSL library then this option can tell
|
If curl is built against the NSS SSL library then this option can tell
|
||||||
curl the nickname of the certificate to use within the NSS database defined
|
curl the nickname of the certificate to use within the NSS database defined
|
||||||
@@ -789,10 +789,12 @@ This option can be used multiple times to add/replace/remove multiple headers.
|
|||||||
be the 128 bit MD5 checksum of the remote host's public key, curl will refuse
|
be the 128 bit MD5 checksum of the remote host's public key, curl will refuse
|
||||||
the connection with the host unless the md5sums match. (Added in 7.17.1)
|
the connection with the host unless the md5sums match. (Added in 7.17.1)
|
||||||
.IP "--ignore-content-length"
|
.IP "--ignore-content-length"
|
||||||
(HTTP)
|
For HTTP, Ignore the Content-Length header. This is particularly useful for
|
||||||
Ignore the Content-Length header. This is particularly useful for servers
|
servers running Apache 1.x, which will report incorrect Content-Length for
|
||||||
running Apache 1.x, which will report incorrect Content-Length for files
|
files larger than 2 gigabytes.
|
||||||
larger than 2 gigabytes.
|
|
||||||
|
For FTP (since 7.46.0), skip the RETR command to figure out the size before
|
||||||
|
downloading a file.
|
||||||
.IP "-i, --include"
|
.IP "-i, --include"
|
||||||
(HTTP) Include the HTTP-header in the output. The HTTP-header includes things
|
(HTTP) Include the HTTP-header in the output. The HTTP-header includes things
|
||||||
like server-name, date of the document, HTTP-version and more...
|
like server-name, date of the document, HTTP-version and more...
|
||||||
@@ -1472,13 +1474,10 @@ specifies the last 500 bytes
|
|||||||
specifies the bytes from offset 9500 and forward
|
specifies the bytes from offset 9500 and forward
|
||||||
.TP
|
.TP
|
||||||
.B 0-0,-1
|
.B 0-0,-1
|
||||||
specifies the first and last byte only(*)(H)
|
specifies the first and last byte only(*)(HTTP)
|
||||||
.TP
|
|
||||||
.B 500-700,600-799
|
|
||||||
specifies 300 bytes from offset 500(H)
|
|
||||||
.TP
|
.TP
|
||||||
.B 100-199,500-599
|
.B 100-199,500-599
|
||||||
specifies two separate 100-byte ranges(*)(H)
|
specifies two separate 100-byte ranges(*) (HTTP)
|
||||||
.RE
|
.RE
|
||||||
.IP
|
.IP
|
||||||
(*) = NOTE that this will cause the server to reply with a multipart
|
(*) = NOTE that this will cause the server to reply with a multipart
|
||||||
|
|||||||
4
docs/examples/.gitignore
vendored
4
docs/examples/.gitignore
vendored
@@ -73,3 +73,7 @@ smtp-vrfy
|
|||||||
url2file
|
url2file
|
||||||
usercertinmem
|
usercertinmem
|
||||||
xmlstream
|
xmlstream
|
||||||
|
http2-download
|
||||||
|
http2-serverpush
|
||||||
|
http2-upload
|
||||||
|
imap-lsub
|
||||||
|
|||||||
@@ -32,51 +32,7 @@ actually torture our web site with your tests! Thanks.
|
|||||||
|
|
||||||
EXAMPLES
|
EXAMPLES
|
||||||
|
|
||||||
anyauthput.c - HTTP PUT using "any" authentication method
|
Each example source code file is designed to be and work stand-alone and
|
||||||
cacertinmem.c - Use a built-in PEM certificate to retrieve a https page
|
rather self-explanatory. The examples may at times lack the level of error
|
||||||
cookie_interface.c - shows usage of simple cookie interface
|
checks you need in a real world, but that is then only for the sake of
|
||||||
curlgtk.c - download using a GTK progress bar
|
readability: to make the code smaller and easier to follow.
|
||||||
curlx.c - getting file info from the remote cert data
|
|
||||||
debug.c - showing how to use the debug callback
|
|
||||||
fileupload.c - uploading to a file:// URL
|
|
||||||
fopen.c - fopen() layer that supports opening URLs and files
|
|
||||||
ftpget.c - simple getting a file from FTP
|
|
||||||
ftpgetresp.c - get the response strings from the FTP server
|
|
||||||
ftpupload.c - upload a file to an FTP server
|
|
||||||
ftpuploadresume.c - resume an upload to an FTP server
|
|
||||||
getinfo.c - get the Content-Type from the recent transfer
|
|
||||||
getinmemory.c - download a file to memory only
|
|
||||||
ghiper.c - curl_multi_socket() using code with glib-2
|
|
||||||
hiperfifo.c - downloads all URLs written to the fifo, using
|
|
||||||
curl_multi_socket() and libevent
|
|
||||||
htmltidy.c - download a document and use libtidy to parse the HTML
|
|
||||||
htmltitle.cc - download a HTML file and extract the <title> tag from a HTML
|
|
||||||
page using libxml
|
|
||||||
http-post.c - HTTP POST
|
|
||||||
httpput.c - HTTP PUT a local file
|
|
||||||
https.c - simple HTTPS transfer
|
|
||||||
imap.c - simple IMAP transfer
|
|
||||||
multi-app.c - a multi-interface app
|
|
||||||
multi-debugcallback.c - a multi-interface app using the debug callback
|
|
||||||
multi-double.c - a multi-interface app doing two simultaneous transfers
|
|
||||||
multi-post.c - a multi-interface app doing a multipart formpost
|
|
||||||
multi-single.c - a multi-interface app getting a single file
|
|
||||||
multi-uv.c - a multi-interface app using libuv
|
|
||||||
multithread.c - an example using multi-treading transferring multiple files
|
|
||||||
opensslthreadlock.c - show how to do locking when using OpenSSL multi-threaded
|
|
||||||
persistant.c - request two URLs with a persistent connection
|
|
||||||
pop3s.c - POP3S transfer
|
|
||||||
pop3slist.c - POP3S LIST
|
|
||||||
post-callback.c - send a HTTP POST using a callback
|
|
||||||
postit2.c - send a HTTP multipart formpost
|
|
||||||
sampleconv.c - showing how a program on a non-ASCII platform would invoke
|
|
||||||
callbacks to do its own codeset conversions instead of using
|
|
||||||
the built-in iconv functions in libcurl
|
|
||||||
sepheaders.c - download headers to a separate file
|
|
||||||
simple.c - the most simple download a URL source
|
|
||||||
simplepost.c - HTTP POST
|
|
||||||
simplessl.c - HTTPS example with certificates many options set
|
|
||||||
synctime.c - Sync local time by extracting date from remote HTTP servers
|
|
||||||
url2file.c - download a document and store it in a file
|
|
||||||
xmlstream.c - Stream-parse a document using the streaming Expat parser
|
|
||||||
10-at-a-time.c - Download many files simultaneously, 10 at a time.
|
|
||||||
|
|||||||
@@ -25,6 +25,7 @@
|
|||||||
*/
|
*/
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
/* somewhat unix-specific */
|
/* somewhat unix-specific */
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
|
|||||||
@@ -25,6 +25,7 @@
|
|||||||
*/
|
*/
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
/* somewhat unix-specific */
|
/* somewhat unix-specific */
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
|
|||||||
@@ -25,6 +25,7 @@
|
|||||||
*/
|
*/
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
|
|
||||||
|
|||||||
@@ -19,10 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
/* <DESC>
|
/* <DESC>
|
||||||
* Simple IMAP APPEND use
|
* IMAP example showing how to send e-mails
|
||||||
* </DESC>
|
* </DESC>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example showing how to copy an e-mail from one folder to another
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example showing how to create a new folder
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example showing how to delete a folder
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example showing how to obtain information about a folder
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example showing how to retreieve e-mails
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example to list the folders within a mailbox
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example to list the subscribed folders
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,7 +19,14 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example using the multi interface
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
/* This is a simple example showing how to fetch mail using libcurl's IMAP
|
/* This is a simple example showing how to fetch mail using libcurl's IMAP
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example showing how to perform a noop
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example showing how to search for new e-mails
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example using SSL
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example showing how to modify the properties of an e-mail
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* IMAP example using TLS
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -19,10 +19,6 @@
|
|||||||
# KIND, either express or implied.
|
# KIND, either express or implied.
|
||||||
#
|
#
|
||||||
###########################################################################
|
###########################################################################
|
||||||
#
|
|
||||||
# Adapted for djgpp / Watt-32 / DOS by
|
|
||||||
# Gisle Vanem <gvanem@broadpark.no>
|
|
||||||
#
|
|
||||||
|
|
||||||
TOPDIR = ../..
|
TOPDIR = ../..
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example showing how to delete e-mails
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example to list the contents of a mailbox
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,7 +19,14 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example using the multi interface
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
/* This is a simple example showing how to retrieve mail using libcurl's POP3
|
/* This is a simple example showing how to retrieve mail using libcurl's POP3
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example showing how to perform a noop
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example showing how to retrieve e-mails
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example using SSL
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example showing how to obtain message statistics
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example using TLS
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example showing how to retreive only the headers of an e-mail
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* POP3 example to list the contents of a mailbox by unique ID
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,11 +19,17 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* SMTP example showing how to expand an e-mail mailing list
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
/* This is a simple example showing how to expand an email mailing list.
|
/* This is a simple example showing how to expand an e-mail mailing list.
|
||||||
*
|
*
|
||||||
* Notes:
|
* Notes:
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* SMTP example showing how to send e-mails
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* SMTP example using the multi interface
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* SMTP example using SSL
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,6 +19,12 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* SMTP example using TLS
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -19,11 +19,17 @@
|
|||||||
* KIND, either express or implied.
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* <DESC>
|
||||||
|
* SMTP example showing how to verify an e-mail address
|
||||||
|
* </DESC>
|
||||||
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
/* This is a simple example showing how to verify an email address from an
|
/* This is a simple example showing how to verify an e-mail address from an
|
||||||
* SMTP server.
|
* SMTP server.
|
||||||
*
|
*
|
||||||
* Notes:
|
* Notes:
|
||||||
|
|||||||
@@ -99,13 +99,13 @@ libcurl-symbols.3: $(srcdir)/symbols-in-versions $(srcdir)/mksymbolsmanpage.pl
|
|||||||
perl $(srcdir)/mksymbolsmanpage.pl < $(srcdir)/symbols-in-versions > $@
|
perl $(srcdir)/mksymbolsmanpage.pl < $(srcdir)/symbols-in-versions > $@
|
||||||
|
|
||||||
html: $(HTMLPAGES)
|
html: $(HTMLPAGES)
|
||||||
cd opts; make html
|
cd opts && make html
|
||||||
|
|
||||||
.3.html:
|
.3.html:
|
||||||
$(MAN2HTML)
|
$(MAN2HTML)
|
||||||
|
|
||||||
pdf: $(PDFPAGES)
|
pdf: $(PDFPAGES)
|
||||||
cd opts; make pdf
|
cd opts && make pdf
|
||||||
|
|
||||||
.3.pdf:
|
.3.pdf:
|
||||||
@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
|
@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ this option.
|
|||||||
You must ensure that the socket has data to read before calling
|
You must ensure that the socket has data to read before calling
|
||||||
\fIcurl_easy_recv(3)\fP, otherwise the call will return \fBCURLE_AGAIN\fP -
|
\fIcurl_easy_recv(3)\fP, otherwise the call will return \fBCURLE_AGAIN\fP -
|
||||||
the socket is used in non-blocking mode internally. Use
|
the socket is used in non-blocking mode internally. Use
|
||||||
\fIcurl_easy_getinfo(3)\fP with \fBCURLINFO_LASTSOCKET\fP to obtain the
|
\fIcurl_easy_getinfo(3)\fP with \fBCURLINFO_ACTIVESOCKET(3)\fP to obtain the
|
||||||
socket; use your operating system facilities like \fIselect(2)\fP to check if
|
socket; use your operating system facilities like \fIselect(2)\fP to check if
|
||||||
it has any data you can read.
|
it has any data you can read.
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ this option.
|
|||||||
You must ensure that the socket is writable before calling
|
You must ensure that the socket is writable before calling
|
||||||
\fIcurl_easy_send(3)\fP, otherwise the call will return \fBCURLE_AGAIN\fP -
|
\fIcurl_easy_send(3)\fP, otherwise the call will return \fBCURLE_AGAIN\fP -
|
||||||
the socket is used in non-blocking mode internally. Use
|
the socket is used in non-blocking mode internally. Use
|
||||||
\fIcurl_easy_getinfo(3)\fP with \fBCURLINFO_LASTSOCKET\fP to obtain the
|
\fIcurl_easy_getinfo(3)\fP with \fBCURLINFO_ACTIVESOCKET(3)\fP to obtain the
|
||||||
socket; use your operating system facilities like \fIselect(2)\fP to check if
|
socket; use your operating system facilities like \fIselect(2)\fP to check if
|
||||||
it can be written to.
|
it can be written to.
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -297,6 +297,13 @@ Disable Transfer decoding. See \fICURLOPT_HTTP_TRANSFER_DECODING(3)\fP
|
|||||||
100-continue timeout. See \fICURLOPT_EXPECT_100_TIMEOUT_MS(3)\fP
|
100-continue timeout. See \fICURLOPT_EXPECT_100_TIMEOUT_MS(3)\fP
|
||||||
.IP CURLOPT_PIPEWAIT
|
.IP CURLOPT_PIPEWAIT
|
||||||
Wait on connection to pipeline on it. See \fICURLOPT_PIPEWAIT(3)\fP
|
Wait on connection to pipeline on it. See \fICURLOPT_PIPEWAIT(3)\fP
|
||||||
|
.IP CURLOPT_STREAM_DEPENDS
|
||||||
|
This HTTP/2 stream depends on another. See \fICURLOPT_STREAM_DEPENDS(3)\fP
|
||||||
|
.IP CURLOPT_STREAM_DEPENDS_E
|
||||||
|
This HTTP/2 stream depends on another exclusively. See
|
||||||
|
\fICURLOPT_STREAM_DEPENDS_E(3)\fP
|
||||||
|
.IP CURLOPT_STREAM_WEIGHT
|
||||||
|
Set this HTTP/2 stream's weight. See \fICURLOPT_STREAM_WEIGHT(3)\fP
|
||||||
.SH SMTP OPTIONS
|
.SH SMTP OPTIONS
|
||||||
.IP CURLOPT_MAIL_FROM
|
.IP CURLOPT_MAIL_FROM
|
||||||
Address of the sender. See \fICURLOPT_MAIL_FROM(3)\fP
|
Address of the sender. See \fICURLOPT_MAIL_FROM(3)\fP
|
||||||
|
|||||||
@@ -83,7 +83,18 @@ to send away. libcurl will use the pointer and refer to the data in your
|
|||||||
application, so you must make sure it remains until curl no longer needs it.
|
application, so you must make sure it remains until curl no longer needs it.
|
||||||
If the data isn't NUL-terminated, or if you'd like it to contain zero bytes,
|
If the data isn't NUL-terminated, or if you'd like it to contain zero bytes,
|
||||||
you must set its length with \fBCURLFORM_CONTENTSLENGTH\fP.
|
you must set its length with \fBCURLFORM_CONTENTSLENGTH\fP.
|
||||||
|
.IP CURLFORM_CONTENTLEN
|
||||||
|
followed by a curl_off_t value giving the length of the contents. Note that
|
||||||
|
for \fICURLFORM_STREAM\fP contents, this option is mandatory.
|
||||||
|
|
||||||
|
If you pass a 0 (zero) for this option, libcurl will instead do a strlen() on
|
||||||
|
the contents to figure out the size. If you really want to send a zero byte
|
||||||
|
content then you must make sure strlen() on the data pointer returns zero.
|
||||||
|
|
||||||
|
(Option added in 7.46.0)
|
||||||
.IP CURLFORM_CONTENTSLENGTH
|
.IP CURLFORM_CONTENTSLENGTH
|
||||||
|
(This option is deprecated. Use \fICURLFORM_CONTENTLEN\fP instead!)
|
||||||
|
|
||||||
followed by a long giving the length of the contents. Note that for
|
followed by a long giving the length of the contents. Note that for
|
||||||
\fICURLFORM_STREAM\fP contents, this option is mandatory.
|
\fICURLFORM_STREAM\fP contents, this option is mandatory.
|
||||||
|
|
||||||
|
|||||||
@@ -77,7 +77,8 @@ Returns the header at index 'num' (or NULL). The returned pointer points to a
|
|||||||
Returns the value for the given header name (or NULL). This is a shortcut so
|
Returns the value for the given header name (or NULL). This is a shortcut so
|
||||||
that the application doesn't have to loop through all headers to find the one
|
that the application doesn't have to loop through all headers to find the one
|
||||||
it is interested in. The data pointed will be freed when this callback
|
it is interested in. The data pointed will be freed when this callback
|
||||||
returns.
|
returns. If more than one header field use the same name, this returns only
|
||||||
|
the first one.
|
||||||
.SH CALLBACK RETURN VALUE
|
.SH CALLBACK RETURN VALUE
|
||||||
.IP "CURL_PUSH_OK (0)"
|
.IP "CURL_PUSH_OK (0)"
|
||||||
The application has accepted the stream and it can now start receiving data,
|
The application has accepted the stream and it can now start receiving data,
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -43,7 +43,7 @@ If curl is built against the NSS SSL library, the NSS PEM PKCS#11 module
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
Built-in system specific
|
Built-in system specific
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -39,7 +39,7 @@ to some limitation in openssl.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL
|
NULL
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -30,9 +30,9 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CERTINFO, long certinfo);
|
|||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
Pass a long set to 1 to enable libcurl's certificate chain info gatherer. With
|
Pass a long set to 1 to enable libcurl's certificate chain info gatherer. With
|
||||||
this enabled, libcurl will extract lots of information and data about the
|
this enabled, libcurl will extract lots of information and data about the
|
||||||
certificates in the certificate chain used in the SSL connection. This data may
|
certificates in the certificate chain used in the SSL connection. This data
|
||||||
then be retrieved after a transfer using \fIcurl_easy_getinfo(3)\fP and its
|
may then be retrieved after a transfer using \fIcurl_easy_getinfo(3)\fP and
|
||||||
option \fICURLINFO_CERTINFO\fP.
|
its option \fICURLINFO_CERTINFO(3)\fP.
|
||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
0
|
0
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ the required proxy authentication and connection setup, but no data transfer,
|
|||||||
and then return.
|
and then return.
|
||||||
|
|
||||||
The option can be used to simply test a connection to a server, but is more
|
The option can be used to simply test a connection to a server, but is more
|
||||||
useful when used with the \fICURLINFO_LASTSOCKET\fP option to
|
useful when used with the \fICURLINFO_ACTIVESOCKET(3)\fP option to
|
||||||
\fIcurl_easy_getinfo(3)\fP as the library can set up the connection and then
|
\fIcurl_easy_getinfo(3)\fP as the library can set up the connection and then
|
||||||
the application can obtain the most recently used socket for special data
|
the application can obtain the most recently used socket for special data
|
||||||
transfers.
|
transfers.
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -33,7 +33,7 @@ socket. It will be used to seed the random engine for SSL.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL
|
NULL
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -85,7 +85,7 @@ static size_t header_callback(char *buffer, size_t size,
|
|||||||
size_t nitems, void *userdata)
|
size_t nitems, void *userdata)
|
||||||
{
|
{
|
||||||
/* received header is nitems * size long in 'buffer' NOT ZERO TERMINATED */
|
/* received header is nitems * size long in 'buffer' NOT ZERO TERMINATED */
|
||||||
/* 'userdata' is set with CURLOPT_WRITEDATA */
|
/* 'userdata' is set with CURLOPT_HEADERDATA */
|
||||||
return nitems * size;
|
return nitems * size;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
.\"
|
.\"
|
||||||
.TH CURLOPT_IGNORE_CONTENT_LENGTH 3 "19 Jun 2014" "libcurl 7.37.0" "curl_easy_setopt options"
|
.TH CURLOPT_IGNORE_CONTENT_LENGTH 3 "19 Jun 2014" "libcurl 7.37.0" "curl_easy_setopt options"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
CURLOPT_IGNORE_CONTENT_LENGTH \- ignore Content-Length in HTTP response
|
CURLOPT_IGNORE_CONTENT_LENGTH \- ignore content length
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.nf
|
.nf
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
@@ -30,12 +30,18 @@ CURLOPT_IGNORE_CONTENT_LENGTH \- ignore Content-Length in HTTP response
|
|||||||
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_IGNORE_CONTENT_LENGTH,
|
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_IGNORE_CONTENT_LENGTH,
|
||||||
long ignore);
|
long ignore);
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
If \fIignore\fP is set to 1, ignore the Content-Length header in the HTTP
|
If \fIignore\fP is set to 1L, ignore the Content-Length header in the HTTP
|
||||||
response. This is useful for Apache 1.x (and similar servers) which will
|
response and ignore asking for or relying on it for FTP transfers.
|
||||||
|
|
||||||
|
This is useful for HTTP with Apache 1.x (and similar servers) which will
|
||||||
report incorrect content length for files over 2 gigabytes. If this option is
|
report incorrect content length for files over 2 gigabytes. If this option is
|
||||||
used, curl will not be able to accurately report progress, and will simply
|
used, curl will not be able to accurately report progress, and will simply
|
||||||
stop the download when the server ends the connection.
|
stop the download when the server ends the connection.
|
||||||
|
|
||||||
|
It is also useful with FTP when for example the file is growing while the
|
||||||
|
transfer is in progress which otherwise will unconditionally cause libcurl to
|
||||||
|
report error.
|
||||||
|
|
||||||
Only use this option if strictly necessary.
|
Only use this option if strictly necessary.
|
||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
0
|
0
|
||||||
@@ -54,7 +60,7 @@ if(curl) {
|
|||||||
}
|
}
|
||||||
.fi
|
.fi
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
Added in 7.14.1
|
Added in 7.14.1. Support for FTP added in 7.46.0.
|
||||||
.SH RETURN VALUE
|
.SH RETURN VALUE
|
||||||
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
|
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -35,7 +35,7 @@ phrase to load a certificate but you need one to load your private key.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL
|
NULL
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ On mismatch, \fICURLE_SSL_PINNEDPUBKEYNOTMATCH\fP is returned.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL
|
NULL
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
.nf
|
.nf
|
||||||
CURL *curl = curl_easy_init();
|
CURL *curl = curl_easy_init();
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -43,7 +43,7 @@ private key with \fICURLOPT_SSLKEY(3)\fP.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL
|
NULL
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -36,7 +36,7 @@ PKCS#12-encoded files.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
"PEM"
|
"PEM"
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -36,7 +36,7 @@ returned.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL
|
NULL
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -36,7 +36,7 @@ returned.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
None
|
None
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -38,7 +38,7 @@ present in the keychain or PKCS#12 file containing the certificate.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL
|
NULL
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -38,7 +38,7 @@ engine. You have to set the crypto engine with \fICURLOPT_SSLENGINE(3)\fP.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
"PEM"
|
"PEM"
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -52,7 +52,7 @@ TLSv1.2 (Added in 7.34.0)
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
CURL_SSLVERSION_DEFAULT
|
CURL_SSLVERSION_DEFAULT
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
.nf
|
.nf
|
||||||
CURL *curl = curl_easy_init();
|
CURL *curl = curl_easy_init();
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -53,7 +53,7 @@ You'll find more details about the NSS cipher lists on this URL:
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL, use internal default
|
NULL, use internal default
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -34,7 +34,7 @@ parameter.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL
|
NULL
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@@ -59,7 +59,7 @@ and trust file settings.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
NULL
|
NULL
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ round trip when performing a full handshake.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
0
|
0
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ also set to zero and cannot be overridden.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
2
|
2
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
.nf
|
.nf
|
||||||
CURL *curl = curl_easy_init();
|
CURL *curl = curl_easy_init();
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ the correct end-point.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
By default, curl assumes a value of 1.
|
By default, curl assumes a value of 1.
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
.nf
|
.nf
|
||||||
CURL *curl = curl_easy_init();
|
CURL *curl = curl_easy_init();
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ extension, the verification will fail.
|
|||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
0
|
0
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
|
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
TODO
|
TODO
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
|
|||||||
56
docs/libcurl/opts/CURLOPT_STREAM_DEPENDS.3
Normal file
56
docs/libcurl/opts/CURLOPT_STREAM_DEPENDS.3
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
.\" **************************************************************************
|
||||||
|
.\" * _ _ ____ _
|
||||||
|
.\" * Project ___| | | | _ \| |
|
||||||
|
.\" * / __| | | | |_) | |
|
||||||
|
.\" * | (__| |_| | _ <| |___
|
||||||
|
.\" * \___|\___/|_| \_\_____|
|
||||||
|
.\" *
|
||||||
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
|
.\" *
|
||||||
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
|
.\" * you should have received as part of this distribution. The terms
|
||||||
|
.\" * are also available at http://curl.haxx.se/docs/copyright.html.
|
||||||
|
.\" *
|
||||||
|
.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||||
|
.\" * copies of the Software, and permit persons to whom the Software is
|
||||||
|
.\" * furnished to do so, under the terms of the COPYING file.
|
||||||
|
.\" *
|
||||||
|
.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||||
|
.\" * KIND, either express or implied.
|
||||||
|
.\" *
|
||||||
|
.\" **************************************************************************
|
||||||
|
.\"
|
||||||
|
.TH CURLOPT_STREAM_DEPENDS 3 "13 Sep 2015" "libcurl 7.46.0" "curl_easy_setopt options"
|
||||||
|
.SH NAME
|
||||||
|
CURLOPT_STREAM_DEPENDS \- set stream this transfer depends on
|
||||||
|
.SH SYNOPSIS
|
||||||
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_STREAM_DEPENDS, CURL *dephandle);
|
||||||
|
.SH DESCRIPTION
|
||||||
|
Pass a CURL * pointer in \fIdephandle\fP to identify the stream within the
|
||||||
|
same connection that this stream is depending upon. This option clears the
|
||||||
|
exclusive it and is mutually exclusive to the
|
||||||
|
\fICURLOPT_STREAM_DEPENDS_E(3)\fP option.
|
||||||
|
|
||||||
|
The spec says "Including a dependency expresses a preference to allocate
|
||||||
|
resources to the identified stream rather than to the dependent stream."
|
||||||
|
|
||||||
|
This option can be set during transfer.
|
||||||
|
|
||||||
|
\fIdephandle\fP must not be the same as \fIhandle\fP, that will cause this
|
||||||
|
function to return an error. It must be another easy handle, and it also needs
|
||||||
|
to be a handle of a transfer that will be sent over the same HTTP/2 connection
|
||||||
|
for this option to have an actual effect.
|
||||||
|
.SH DEFAULT
|
||||||
|
NULL
|
||||||
|
.SH PROTOCOLS
|
||||||
|
HTTP/2
|
||||||
|
.SH EXAMPLE
|
||||||
|
TODO
|
||||||
|
.SH AVAILABILITY
|
||||||
|
Added in 7.46.0
|
||||||
|
.SH RETURN VALUE
|
||||||
|
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.BR CURLOPT_STREAM_WEIGHT "(3), " CURLOPT_STREAM_DEPENDS_E "(3), "
|
||||||
59
docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3
Normal file
59
docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
.\" **************************************************************************
|
||||||
|
.\" * _ _ ____ _
|
||||||
|
.\" * Project ___| | | | _ \| |
|
||||||
|
.\" * / __| | | | |_) | |
|
||||||
|
.\" * | (__| |_| | _ <| |___
|
||||||
|
.\" * \___|\___/|_| \_\_____|
|
||||||
|
.\" *
|
||||||
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
|
.\" *
|
||||||
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
|
.\" * you should have received as part of this distribution. The terms
|
||||||
|
.\" * are also available at http://curl.haxx.se/docs/copyright.html.
|
||||||
|
.\" *
|
||||||
|
.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||||
|
.\" * copies of the Software, and permit persons to whom the Software is
|
||||||
|
.\" * furnished to do so, under the terms of the COPYING file.
|
||||||
|
.\" *
|
||||||
|
.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||||
|
.\" * KIND, either express or implied.
|
||||||
|
.\" *
|
||||||
|
.\" **************************************************************************
|
||||||
|
.\"
|
||||||
|
.TH CURLOPT_STREAM_DEPENDS_E 3 "13 Sep 2015" "libcurl 7.46.0" "curl_easy_setopt options"
|
||||||
|
.SH NAME
|
||||||
|
CURLOPT_STREAM_DEPENDS_E \- set stream this transfer depends on execlusively
|
||||||
|
.SH SYNOPSIS
|
||||||
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_STREAM_DEPENDS_E, CURL *dephandle);
|
||||||
|
.SH DESCRIPTION
|
||||||
|
Pass a CURL * pointer in \fIdephandle\fP to identify the stream within the
|
||||||
|
same connection that this stream is depending upon exclusively. That means it
|
||||||
|
depends on it and sets the Exclusive bit.
|
||||||
|
|
||||||
|
The spec says "Including a dependency expresses a preference to allocate
|
||||||
|
resources to the identified stream rather than to the dependent stream."
|
||||||
|
|
||||||
|
Setting a dependency with the exclusive flag for a reprioritized stream causes
|
||||||
|
all the dependencies of the new parent stream to become dependent on the
|
||||||
|
reprioritized stream.
|
||||||
|
|
||||||
|
This option can be set during transfer.
|
||||||
|
|
||||||
|
\fIdephandle\fP must not be the same as \fIhandle\fP, that will cause this
|
||||||
|
function to return an error. It must be another easy handle, and it also needs
|
||||||
|
to be a handle of a transfer that will be sent over the same HTTP/2 connection
|
||||||
|
for this option to have an actual effect.
|
||||||
|
.SH DEFAULT
|
||||||
|
NULL
|
||||||
|
.SH PROTOCOLS
|
||||||
|
HTTP/2
|
||||||
|
.SH EXAMPLE
|
||||||
|
TODO
|
||||||
|
.SH AVAILABILITY
|
||||||
|
Added in 7.46.0
|
||||||
|
.SH RETURN VALUE
|
||||||
|
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.BR CURLOPT_STREAM_WEIGHT "(3), " CURLOPT_STREAM_DEPENDS "(3), "
|
||||||
63
docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3
Normal file
63
docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
.\" **************************************************************************
|
||||||
|
.\" * _ _ ____ _
|
||||||
|
.\" * Project ___| | | | _ \| |
|
||||||
|
.\" * / __| | | | |_) | |
|
||||||
|
.\" * | (__| |_| | _ <| |___
|
||||||
|
.\" * \___|\___/|_| \_\_____|
|
||||||
|
.\" *
|
||||||
|
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
|
.\" *
|
||||||
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
|
.\" * you should have received as part of this distribution. The terms
|
||||||
|
.\" * are also available at http://curl.haxx.se/docs/copyright.html.
|
||||||
|
.\" *
|
||||||
|
.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||||
|
.\" * copies of the Software, and permit persons to whom the Software is
|
||||||
|
.\" * furnished to do so, under the terms of the COPYING file.
|
||||||
|
.\" *
|
||||||
|
.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||||
|
.\" * KIND, either express or implied.
|
||||||
|
.\" *
|
||||||
|
.\" **************************************************************************
|
||||||
|
.\"
|
||||||
|
.TH CURLOPT_STREAM_WEIGHT 3 "13 Sep 2015" "libcurl 7.46.0" "curl_easy_setopt options"
|
||||||
|
.SH NAME
|
||||||
|
CURLOPT_STREAM_WEIGHT \- set numerical stream weight
|
||||||
|
.SH SYNOPSIS
|
||||||
|
#include <curl/curl.h>
|
||||||
|
|
||||||
|
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_STREAM_WEIGHT, long weight);
|
||||||
|
.SH DESCRIPTION
|
||||||
|
Set the long \fIweight\fP to a number between 1 and 256.
|
||||||
|
|
||||||
|
When using HTTP/2, this option sets the individual weight for this particular
|
||||||
|
stream used by the easy \fIhandle\fP. Setting and using weights only makes
|
||||||
|
sense and is only usable when doing multiple streams over the same
|
||||||
|
connections, which thus implies that you use \fICURLMOPT_PIPELINING(3)\fP.
|
||||||
|
|
||||||
|
This option can be set during transfer and will then cause the updated weight
|
||||||
|
info get sent to the server the next time a HTTP/2 frame is sent to the
|
||||||
|
server.
|
||||||
|
|
||||||
|
See section 5.3 of RFC 7540 for protocol details:
|
||||||
|
https://httpwg.github.io/specs/rfc7540.html#StreamPriority
|
||||||
|
|
||||||
|
Streams with the same parent should be allocated resources proportionally
|
||||||
|
based on their weight. So if you have two streams going, stream A with weight
|
||||||
|
16 and stream B with weight 32, stream B will get two thirds (32/48) of the
|
||||||
|
available bandwidth (assuming the server can send off the data equally for
|
||||||
|
both streams).
|
||||||
|
.SH DEFAULT
|
||||||
|
If nothing is set, the HTTP/2 protocol itself will use its own default which
|
||||||
|
is 16.
|
||||||
|
.SH PROTOCOLS
|
||||||
|
HTTP/2
|
||||||
|
.SH EXAMPLE
|
||||||
|
TODO
|
||||||
|
.SH AVAILABILITY
|
||||||
|
Added in 7.46.0
|
||||||
|
.SH RETURN VALUE
|
||||||
|
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.BR CURLOPT_STREAM_DEPENDS "(3), " CURLOPT_STREAM_DEPENDS_E "(3), "
|
||||||
|
.BR CURLOPT_PIPEWAIT "(3), " CURLMOPT_PIPELINING "(3), "
|
||||||
@@ -106,7 +106,8 @@ man_MANS = CURLOPT_ACCEPT_ENCODING.3 CURLOPT_ACCEPTTIMEOUT_MS.3 \
|
|||||||
CURLOPT_USE_SSL.3 CURLOPT_VERBOSE.3 CURLOPT_WILDCARDMATCH.3 \
|
CURLOPT_USE_SSL.3 CURLOPT_VERBOSE.3 CURLOPT_WILDCARDMATCH.3 \
|
||||||
CURLOPT_WRITEDATA.3 CURLOPT_WRITEFUNCTION.3 CURLOPT_XFERINFODATA.3 \
|
CURLOPT_WRITEDATA.3 CURLOPT_WRITEFUNCTION.3 CURLOPT_XFERINFODATA.3 \
|
||||||
CURLOPT_XFERINFOFUNCTION.3 CURLOPT_XOAUTH2_BEARER.3 \
|
CURLOPT_XFERINFOFUNCTION.3 CURLOPT_XOAUTH2_BEARER.3 \
|
||||||
CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.3 \
|
CURLOPT_STREAM_DEPENDS.3 CURLOPT_STREAM_DEPENDS_E.3 \
|
||||||
|
CURLOPT_STREAM_WEIGHT.3 CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.3 \
|
||||||
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.3 CURLMOPT_MAXCONNECTS.3 \
|
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.3 CURLMOPT_MAXCONNECTS.3 \
|
||||||
CURLMOPT_MAX_HOST_CONNECTIONS.3 CURLMOPT_MAX_PIPELINE_LENGTH.3 \
|
CURLMOPT_MAX_HOST_CONNECTIONS.3 CURLMOPT_MAX_PIPELINE_LENGTH.3 \
|
||||||
CURLMOPT_MAX_TOTAL_CONNECTIONS.3 CURLMOPT_PIPELINING.3 \
|
CURLMOPT_MAX_TOTAL_CONNECTIONS.3 CURLMOPT_PIPELINING.3 \
|
||||||
@@ -233,7 +234,8 @@ HTMLPAGES = CURLOPT_ACCEPT_ENCODING.html CURLOPT_ACCEPTTIMEOUT_MS.html \
|
|||||||
CURLOPT_VERBOSE.html CURLOPT_WILDCARDMATCH.html CURLOPT_WRITEDATA.html \
|
CURLOPT_VERBOSE.html CURLOPT_WILDCARDMATCH.html CURLOPT_WRITEDATA.html \
|
||||||
CURLOPT_WRITEFUNCTION.html CURLOPT_XFERINFODATA.html \
|
CURLOPT_WRITEFUNCTION.html CURLOPT_XFERINFODATA.html \
|
||||||
CURLOPT_XFERINFOFUNCTION.html CURLOPT_XOAUTH2_BEARER.html \
|
CURLOPT_XFERINFOFUNCTION.html CURLOPT_XOAUTH2_BEARER.html \
|
||||||
CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.html \
|
CURLOPT_STREAM_DEPENDS.html CURLOPT_STREAM_DEPENDS_E.html \
|
||||||
|
CURLOPT_STREAM_WEIGHT.html CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.html \
|
||||||
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.html CURLMOPT_MAXCONNECTS.html \
|
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.html CURLMOPT_MAXCONNECTS.html \
|
||||||
CURLMOPT_MAX_HOST_CONNECTIONS.html CURLMOPT_MAX_PIPELINE_LENGTH.html \
|
CURLMOPT_MAX_HOST_CONNECTIONS.html CURLMOPT_MAX_PIPELINE_LENGTH.html \
|
||||||
CURLMOPT_MAX_TOTAL_CONNECTIONS.html CURLMOPT_PIPELINING.html \
|
CURLMOPT_MAX_TOTAL_CONNECTIONS.html CURLMOPT_PIPELINING.html \
|
||||||
@@ -362,7 +364,8 @@ PDFPAGES = CURLOPT_ACCEPT_ENCODING.pdf CURLOPT_ACCEPTTIMEOUT_MS.pdf \
|
|||||||
CURLOPT_VERBOSE.pdf CURLOPT_WILDCARDMATCH.pdf CURLOPT_WRITEDATA.pdf \
|
CURLOPT_VERBOSE.pdf CURLOPT_WILDCARDMATCH.pdf CURLOPT_WRITEDATA.pdf \
|
||||||
CURLOPT_WRITEFUNCTION.pdf CURLOPT_XFERINFODATA.pdf \
|
CURLOPT_WRITEFUNCTION.pdf CURLOPT_XFERINFODATA.pdf \
|
||||||
CURLOPT_XFERINFOFUNCTION.pdf CURLOPT_XOAUTH2_BEARER.pdf \
|
CURLOPT_XFERINFOFUNCTION.pdf CURLOPT_XOAUTH2_BEARER.pdf \
|
||||||
CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf \
|
CURLOPT_STREAM_DEPENDS.pdf CURLOPT_STREAM_DEPENDS_E.pdf \
|
||||||
|
CURLOPT_STREAM_WEIGHT.pdf CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf \
|
||||||
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.pdf CURLMOPT_MAXCONNECTS.pdf \
|
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.pdf CURLMOPT_MAXCONNECTS.pdf \
|
||||||
CURLMOPT_MAX_HOST_CONNECTIONS.pdf CURLMOPT_MAX_PIPELINE_LENGTH.pdf \
|
CURLMOPT_MAX_HOST_CONNECTIONS.pdf CURLMOPT_MAX_PIPELINE_LENGTH.pdf \
|
||||||
CURLMOPT_MAX_TOTAL_CONNECTIONS.pdf CURLMOPT_PIPELINING.pdf \
|
CURLMOPT_MAX_TOTAL_CONNECTIONS.pdf CURLMOPT_PIPELINING.pdf \
|
||||||
|
|||||||
@@ -164,6 +164,7 @@ CURLFORM_BUFFER 7.9.8
|
|||||||
CURLFORM_BUFFERLENGTH 7.9.8
|
CURLFORM_BUFFERLENGTH 7.9.8
|
||||||
CURLFORM_BUFFERPTR 7.9.8
|
CURLFORM_BUFFERPTR 7.9.8
|
||||||
CURLFORM_CONTENTHEADER 7.9.3
|
CURLFORM_CONTENTHEADER 7.9.3
|
||||||
|
CURLFORM_CONTENTLEN 7.46.0
|
||||||
CURLFORM_CONTENTSLENGTH 7.9
|
CURLFORM_CONTENTSLENGTH 7.9
|
||||||
CURLFORM_CONTENTTYPE 7.9
|
CURLFORM_CONTENTTYPE 7.9
|
||||||
CURLFORM_COPYCONTENTS 7.9
|
CURLFORM_COPYCONTENTS 7.9
|
||||||
@@ -308,6 +309,7 @@ CURLOPTTYPE_FUNCTIONPOINT 7.1
|
|||||||
CURLOPTTYPE_LONG 7.1
|
CURLOPTTYPE_LONG 7.1
|
||||||
CURLOPTTYPE_OBJECTPOINT 7.1
|
CURLOPTTYPE_OBJECTPOINT 7.1
|
||||||
CURLOPTTYPE_OFF_T 7.11.0
|
CURLOPTTYPE_OFF_T 7.11.0
|
||||||
|
CURLOPTTYPE_STRINGPOINT 7.46.0
|
||||||
CURLOPT_ACCEPTTIMEOUT_MS 7.24.0
|
CURLOPT_ACCEPTTIMEOUT_MS 7.24.0
|
||||||
CURLOPT_ACCEPT_ENCODING 7.21.6
|
CURLOPT_ACCEPT_ENCODING 7.21.6
|
||||||
CURLOPT_ADDRESS_SCOPE 7.19.0
|
CURLOPT_ADDRESS_SCOPE 7.19.0
|
||||||
@@ -526,6 +528,9 @@ CURLOPT_SSL_VERIFYHOST 7.8.1
|
|||||||
CURLOPT_SSL_VERIFYPEER 7.4.2
|
CURLOPT_SSL_VERIFYPEER 7.4.2
|
||||||
CURLOPT_SSL_VERIFYSTATUS 7.41.0
|
CURLOPT_SSL_VERIFYSTATUS 7.41.0
|
||||||
CURLOPT_STDERR 7.1
|
CURLOPT_STDERR 7.1
|
||||||
|
CURLOPT_STREAM_DEPENDS 7.46.0
|
||||||
|
CURLOPT_STREAM_DEPENDS_E 7.46.0
|
||||||
|
CURLOPT_STREAM_WEIGHT 7.46.0
|
||||||
CURLOPT_TCP_KEEPALIVE 7.25.0
|
CURLOPT_TCP_KEEPALIVE 7.25.0
|
||||||
CURLOPT_TCP_KEEPIDLE 7.25.0
|
CURLOPT_TCP_KEEPIDLE 7.25.0
|
||||||
CURLOPT_TCP_KEEPINTVL 7.25.0
|
CURLOPT_TCP_KEEPINTVL 7.25.0
|
||||||
@@ -629,6 +634,7 @@ CURLSSLBACKEND_CYASSL 7.34.0
|
|||||||
CURLSSLBACKEND_DARWINSSL 7.34.0
|
CURLSSLBACKEND_DARWINSSL 7.34.0
|
||||||
CURLSSLBACKEND_GNUTLS 7.34.0
|
CURLSSLBACKEND_GNUTLS 7.34.0
|
||||||
CURLSSLBACKEND_GSKIT 7.34.0
|
CURLSSLBACKEND_GSKIT 7.34.0
|
||||||
|
CURLSSLBACKEND_MBEDTLS 7.46.0
|
||||||
CURLSSLBACKEND_NONE 7.34.0
|
CURLSSLBACKEND_NONE 7.34.0
|
||||||
CURLSSLBACKEND_NSS 7.34.0
|
CURLSSLBACKEND_NSS 7.34.0
|
||||||
CURLSSLBACKEND_OPENSSL 7.34.0
|
CURLSSLBACKEND_OPENSSL 7.34.0
|
||||||
@@ -674,10 +680,18 @@ CURL_GLOBAL_DEFAULT 7.8
|
|||||||
CURL_GLOBAL_NOTHING 7.8
|
CURL_GLOBAL_NOTHING 7.8
|
||||||
CURL_GLOBAL_SSL 7.8
|
CURL_GLOBAL_SSL 7.8
|
||||||
CURL_GLOBAL_WIN32 7.8.1
|
CURL_GLOBAL_WIN32 7.8.1
|
||||||
|
CURL_HTTPPOST_BUFFER 7.46.0
|
||||||
|
CURL_HTTPPOST_CALLBACK 7.46.0
|
||||||
|
CURL_HTTPPOST_FILENAME 7.46.0
|
||||||
|
CURL_HTTPPOST_LARGE 7.46.0
|
||||||
|
CURL_HTTPPOST_PTRBUFFER 7.46.0
|
||||||
|
CURL_HTTPPOST_PTRCONTENTS 7.46.0
|
||||||
|
CURL_HTTPPOST_PTRNAME 7.46.0
|
||||||
|
CURL_HTTPPOST_READFILE 7.46.0
|
||||||
CURL_HTTP_VERSION_1_0 7.9.1
|
CURL_HTTP_VERSION_1_0 7.9.1
|
||||||
CURL_HTTP_VERSION_1_1 7.9.1
|
CURL_HTTP_VERSION_1_1 7.9.1
|
||||||
CURL_HTTP_VERSION_2_0 7.33.0
|
|
||||||
CURL_HTTP_VERSION_2 7.43.0
|
CURL_HTTP_VERSION_2 7.43.0
|
||||||
|
CURL_HTTP_VERSION_2_0 7.33.0
|
||||||
CURL_HTTP_VERSION_NONE 7.9.1
|
CURL_HTTP_VERSION_NONE 7.9.1
|
||||||
CURL_IPRESOLVE_V4 7.10.8
|
CURL_IPRESOLVE_V4 7.10.8
|
||||||
CURL_IPRESOLVE_V6 7.10.8
|
CURL_IPRESOLVE_V6 7.10.8
|
||||||
|
|||||||
@@ -127,7 +127,8 @@ struct curl_httppost {
|
|||||||
char *name; /* pointer to allocated name */
|
char *name; /* pointer to allocated name */
|
||||||
long namelength; /* length of name length */
|
long namelength; /* length of name length */
|
||||||
char *contents; /* pointer to allocated data contents */
|
char *contents; /* pointer to allocated data contents */
|
||||||
long contentslength; /* length of contents field */
|
long contentslength; /* length of contents field, see also
|
||||||
|
CURL_HTTPPOST_LARGE */
|
||||||
char *buffer; /* pointer to allocated buffer contents */
|
char *buffer; /* pointer to allocated buffer contents */
|
||||||
long bufferlength; /* length of buffer field */
|
long bufferlength; /* length of buffer field */
|
||||||
char *contenttype; /* Content-Type */
|
char *contenttype; /* Content-Type */
|
||||||
@@ -136,24 +137,33 @@ struct curl_httppost {
|
|||||||
file, this link should link to following
|
file, this link should link to following
|
||||||
files */
|
files */
|
||||||
long flags; /* as defined below */
|
long flags; /* as defined below */
|
||||||
#define HTTPPOST_FILENAME (1<<0) /* specified content is a file name */
|
|
||||||
#define HTTPPOST_READFILE (1<<1) /* specified content is a file name */
|
/* specified content is a file name */
|
||||||
#define HTTPPOST_PTRNAME (1<<2) /* name is only stored pointer
|
#define CURL_HTTPPOST_FILENAME (1<<0)
|
||||||
do not free in formfree */
|
/* specified content is a file name */
|
||||||
#define HTTPPOST_PTRCONTENTS (1<<3) /* contents is only stored pointer
|
#define CURL_HTTPPOST_READFILE (1<<1)
|
||||||
do not free in formfree */
|
/* name is only stored pointer do not free in formfree */
|
||||||
#define HTTPPOST_BUFFER (1<<4) /* upload file from buffer */
|
#define CURL_HTTPPOST_PTRNAME (1<<2)
|
||||||
#define HTTPPOST_PTRBUFFER (1<<5) /* upload file from pointer contents */
|
/* contents is only stored pointer do not free in formfree */
|
||||||
#define HTTPPOST_CALLBACK (1<<6) /* upload file contents by using the
|
#define CURL_HTTPPOST_PTRCONTENTS (1<<3)
|
||||||
regular read callback to get the data
|
/* upload file from buffer */
|
||||||
and pass the given pointer as custom
|
#define CURL_HTTPPOST_BUFFER (1<<4)
|
||||||
pointer */
|
/* upload file from pointer contents */
|
||||||
|
#define CURL_HTTPPOST_PTRBUFFER (1<<5)
|
||||||
|
/* upload file contents by using the regular read callback to get the data and
|
||||||
|
pass the given pointer as custom pointer */
|
||||||
|
#define CURL_HTTPPOST_CALLBACK (1<<6)
|
||||||
|
/* use size in 'contentlen', added in 7.46.0 */
|
||||||
|
#define CURL_HTTPPOST_LARGE (1<<7)
|
||||||
|
|
||||||
char *showfilename; /* The file name to show. If not set, the
|
char *showfilename; /* The file name to show. If not set, the
|
||||||
actual file name will be used (if this
|
actual file name will be used (if this
|
||||||
is a file part) */
|
is a file part) */
|
||||||
void *userp; /* custom pointer used for
|
void *userp; /* custom pointer used for
|
||||||
HTTPPOST_CALLBACK posts */
|
HTTPPOST_CALLBACK posts */
|
||||||
|
curl_off_t contentlen; /* alternative length of contents
|
||||||
|
field. Used if CURL_HTTPPOST_LARGE is
|
||||||
|
set. Added in 7.46.0 */
|
||||||
};
|
};
|
||||||
|
|
||||||
/* This is the CURLOPT_PROGRESSFUNCTION callback proto. It is now considered
|
/* This is the CURLOPT_PROGRESSFUNCTION callback proto. It is now considered
|
||||||
@@ -818,9 +828,13 @@ typedef enum {
|
|||||||
but 32 */
|
but 32 */
|
||||||
#define CURLOPTTYPE_LONG 0
|
#define CURLOPTTYPE_LONG 0
|
||||||
#define CURLOPTTYPE_OBJECTPOINT 10000
|
#define CURLOPTTYPE_OBJECTPOINT 10000
|
||||||
|
#define CURLOPTTYPE_STRINGPOINT 10000
|
||||||
#define CURLOPTTYPE_FUNCTIONPOINT 20000
|
#define CURLOPTTYPE_FUNCTIONPOINT 20000
|
||||||
#define CURLOPTTYPE_OFF_T 30000
|
#define CURLOPTTYPE_OFF_T 30000
|
||||||
|
|
||||||
|
/* *STRINGPOINT is an alias for OBJECTPOINT to allow tools to extract the
|
||||||
|
string options from the header file */
|
||||||
|
|
||||||
/* name is uppercase CURLOPT_<name>,
|
/* name is uppercase CURLOPT_<name>,
|
||||||
type is one of the defined CURLOPTTYPE_<type>
|
type is one of the defined CURLOPTTYPE_<type>
|
||||||
number is unique identifier */
|
number is unique identifier */
|
||||||
@@ -834,6 +848,7 @@ typedef enum {
|
|||||||
/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */
|
/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */
|
||||||
#define LONG CURLOPTTYPE_LONG
|
#define LONG CURLOPTTYPE_LONG
|
||||||
#define OBJECTPOINT CURLOPTTYPE_OBJECTPOINT
|
#define OBJECTPOINT CURLOPTTYPE_OBJECTPOINT
|
||||||
|
#define STRINGPOINT CURLOPTTYPE_OBJECTPOINT
|
||||||
#define FUNCTIONPOINT CURLOPTTYPE_FUNCTIONPOINT
|
#define FUNCTIONPOINT CURLOPTTYPE_FUNCTIONPOINT
|
||||||
#define OFF_T CURLOPTTYPE_OFF_T
|
#define OFF_T CURLOPTTYPE_OFF_T
|
||||||
#define CINIT(name,type,number) CURLOPT_/**/name = type + number
|
#define CINIT(name,type,number) CURLOPT_/**/name = type + number
|
||||||
@@ -850,22 +865,22 @@ typedef enum {
|
|||||||
CINIT(WRITEDATA, OBJECTPOINT, 1),
|
CINIT(WRITEDATA, OBJECTPOINT, 1),
|
||||||
|
|
||||||
/* The full URL to get/put */
|
/* The full URL to get/put */
|
||||||
CINIT(URL, OBJECTPOINT, 2),
|
CINIT(URL, STRINGPOINT, 2),
|
||||||
|
|
||||||
/* Port number to connect to, if other than default. */
|
/* Port number to connect to, if other than default. */
|
||||||
CINIT(PORT, LONG, 3),
|
CINIT(PORT, LONG, 3),
|
||||||
|
|
||||||
/* Name of proxy to use. */
|
/* Name of proxy to use. */
|
||||||
CINIT(PROXY, OBJECTPOINT, 4),
|
CINIT(PROXY, STRINGPOINT, 4),
|
||||||
|
|
||||||
/* "user:password;options" to use when fetching. */
|
/* "user:password;options" to use when fetching. */
|
||||||
CINIT(USERPWD, OBJECTPOINT, 5),
|
CINIT(USERPWD, STRINGPOINT, 5),
|
||||||
|
|
||||||
/* "user:password" to use with proxy. */
|
/* "user:password" to use with proxy. */
|
||||||
CINIT(PROXYUSERPWD, OBJECTPOINT, 6),
|
CINIT(PROXYUSERPWD, STRINGPOINT, 6),
|
||||||
|
|
||||||
/* Range to get, specified as an ASCII string. */
|
/* Range to get, specified as an ASCII string. */
|
||||||
CINIT(RANGE, OBJECTPOINT, 7),
|
CINIT(RANGE, STRINGPOINT, 7),
|
||||||
|
|
||||||
/* not used */
|
/* not used */
|
||||||
|
|
||||||
@@ -902,14 +917,14 @@ typedef enum {
|
|||||||
CINIT(POSTFIELDS, OBJECTPOINT, 15),
|
CINIT(POSTFIELDS, OBJECTPOINT, 15),
|
||||||
|
|
||||||
/* Set the referrer page (needed by some CGIs) */
|
/* Set the referrer page (needed by some CGIs) */
|
||||||
CINIT(REFERER, OBJECTPOINT, 16),
|
CINIT(REFERER, STRINGPOINT, 16),
|
||||||
|
|
||||||
/* Set the FTP PORT string (interface name, named or numerical IP address)
|
/* Set the FTP PORT string (interface name, named or numerical IP address)
|
||||||
Use i.e '-' to use default address. */
|
Use i.e '-' to use default address. */
|
||||||
CINIT(FTPPORT, OBJECTPOINT, 17),
|
CINIT(FTPPORT, STRINGPOINT, 17),
|
||||||
|
|
||||||
/* Set the User-Agent string (examined by some CGIs) */
|
/* Set the User-Agent string (examined by some CGIs) */
|
||||||
CINIT(USERAGENT, OBJECTPOINT, 18),
|
CINIT(USERAGENT, STRINGPOINT, 18),
|
||||||
|
|
||||||
/* If the download receives less than "low speed limit" bytes/second
|
/* If the download receives less than "low speed limit" bytes/second
|
||||||
* during "low speed time" seconds, the operations is aborted.
|
* during "low speed time" seconds, the operations is aborted.
|
||||||
@@ -932,7 +947,7 @@ typedef enum {
|
|||||||
CINIT(RESUME_FROM, LONG, 21),
|
CINIT(RESUME_FROM, LONG, 21),
|
||||||
|
|
||||||
/* Set cookie in request: */
|
/* Set cookie in request: */
|
||||||
CINIT(COOKIE, OBJECTPOINT, 22),
|
CINIT(COOKIE, STRINGPOINT, 22),
|
||||||
|
|
||||||
/* This points to a linked list of headers, struct curl_slist kind. This
|
/* This points to a linked list of headers, struct curl_slist kind. This
|
||||||
list is also used for RTSP (in spite of its name) */
|
list is also used for RTSP (in spite of its name) */
|
||||||
@@ -942,10 +957,10 @@ typedef enum {
|
|||||||
CINIT(HTTPPOST, OBJECTPOINT, 24),
|
CINIT(HTTPPOST, OBJECTPOINT, 24),
|
||||||
|
|
||||||
/* name of the file keeping your private SSL-certificate */
|
/* name of the file keeping your private SSL-certificate */
|
||||||
CINIT(SSLCERT, OBJECTPOINT, 25),
|
CINIT(SSLCERT, STRINGPOINT, 25),
|
||||||
|
|
||||||
/* password for the SSL or SSH private key */
|
/* password for the SSL or SSH private key */
|
||||||
CINIT(KEYPASSWD, OBJECTPOINT, 26),
|
CINIT(KEYPASSWD, STRINGPOINT, 26),
|
||||||
|
|
||||||
/* send TYPE parameter? */
|
/* send TYPE parameter? */
|
||||||
CINIT(CRLF, LONG, 27),
|
CINIT(CRLF, LONG, 27),
|
||||||
@@ -959,7 +974,7 @@ typedef enum {
|
|||||||
|
|
||||||
/* point to a file to read the initial cookies from, also enables
|
/* point to a file to read the initial cookies from, also enables
|
||||||
"cookie awareness" */
|
"cookie awareness" */
|
||||||
CINIT(COOKIEFILE, OBJECTPOINT, 31),
|
CINIT(COOKIEFILE, STRINGPOINT, 31),
|
||||||
|
|
||||||
/* What version to specifically try to use.
|
/* What version to specifically try to use.
|
||||||
See CURL_SSLVERSION defines below. */
|
See CURL_SSLVERSION defines below. */
|
||||||
@@ -978,9 +993,9 @@ typedef enum {
|
|||||||
HTTP: DELETE, TRACE and others
|
HTTP: DELETE, TRACE and others
|
||||||
FTP: to use a different list command
|
FTP: to use a different list command
|
||||||
*/
|
*/
|
||||||
CINIT(CUSTOMREQUEST, OBJECTPOINT, 36),
|
CINIT(CUSTOMREQUEST, STRINGPOINT, 36),
|
||||||
|
|
||||||
/* HTTP request, for odd commands like DELETE, TRACE and others */
|
/* FILE handle to use instead of stderr */
|
||||||
CINIT(STDERR, OBJECTPOINT, 37),
|
CINIT(STDERR, OBJECTPOINT, 37),
|
||||||
|
|
||||||
/* 38 is not used */
|
/* 38 is not used */
|
||||||
@@ -1037,19 +1052,19 @@ typedef enum {
|
|||||||
CINIT(HTTPPROXYTUNNEL, LONG, 61),
|
CINIT(HTTPPROXYTUNNEL, LONG, 61),
|
||||||
|
|
||||||
/* Set the interface string to use as outgoing network interface */
|
/* Set the interface string to use as outgoing network interface */
|
||||||
CINIT(INTERFACE, OBJECTPOINT, 62),
|
CINIT(INTERFACE, STRINGPOINT, 62),
|
||||||
|
|
||||||
/* Set the krb4/5 security level, this also enables krb4/5 awareness. This
|
/* Set the krb4/5 security level, this also enables krb4/5 awareness. This
|
||||||
* is a string, 'clear', 'safe', 'confidential' or 'private'. If the string
|
* is a string, 'clear', 'safe', 'confidential' or 'private'. If the string
|
||||||
* is set but doesn't match one of these, 'private' will be used. */
|
* is set but doesn't match one of these, 'private' will be used. */
|
||||||
CINIT(KRBLEVEL, OBJECTPOINT, 63),
|
CINIT(KRBLEVEL, STRINGPOINT, 63),
|
||||||
|
|
||||||
/* Set if we should verify the peer in ssl handshake, set 1 to verify. */
|
/* Set if we should verify the peer in ssl handshake, set 1 to verify. */
|
||||||
CINIT(SSL_VERIFYPEER, LONG, 64),
|
CINIT(SSL_VERIFYPEER, LONG, 64),
|
||||||
|
|
||||||
/* The CApath or CAfile used to validate the peer certificate
|
/* The CApath or CAfile used to validate the peer certificate
|
||||||
this option is used only if SSL_VERIFYPEER is true */
|
this option is used only if SSL_VERIFYPEER is true */
|
||||||
CINIT(CAINFO, OBJECTPOINT, 65),
|
CINIT(CAINFO, STRINGPOINT, 65),
|
||||||
|
|
||||||
/* 66 = OBSOLETE */
|
/* 66 = OBSOLETE */
|
||||||
/* 67 = OBSOLETE */
|
/* 67 = OBSOLETE */
|
||||||
@@ -1083,10 +1098,10 @@ typedef enum {
|
|||||||
|
|
||||||
/* Set to a file name that contains random data for libcurl to use to
|
/* Set to a file name that contains random data for libcurl to use to
|
||||||
seed the random engine when doing SSL connects. */
|
seed the random engine when doing SSL connects. */
|
||||||
CINIT(RANDOM_FILE, OBJECTPOINT, 76),
|
CINIT(RANDOM_FILE, STRINGPOINT, 76),
|
||||||
|
|
||||||
/* Set to the Entropy Gathering Daemon socket pathname */
|
/* Set to the Entropy Gathering Daemon socket pathname */
|
||||||
CINIT(EGDSOCKET, OBJECTPOINT, 77),
|
CINIT(EGDSOCKET, STRINGPOINT, 77),
|
||||||
|
|
||||||
/* Time-out connect operations after this amount of seconds, if connects are
|
/* Time-out connect operations after this amount of seconds, if connects are
|
||||||
OK within this time, then fine... This only aborts the connect phase. */
|
OK within this time, then fine... This only aborts the connect phase. */
|
||||||
@@ -1108,10 +1123,10 @@ typedef enum {
|
|||||||
|
|
||||||
/* Specify which file name to write all known cookies in after completed
|
/* Specify which file name to write all known cookies in after completed
|
||||||
operation. Set file name to "-" (dash) to make it go to stdout. */
|
operation. Set file name to "-" (dash) to make it go to stdout. */
|
||||||
CINIT(COOKIEJAR, OBJECTPOINT, 82),
|
CINIT(COOKIEJAR, STRINGPOINT, 82),
|
||||||
|
|
||||||
/* Specify which SSL ciphers to use */
|
/* Specify which SSL ciphers to use */
|
||||||
CINIT(SSL_CIPHER_LIST, OBJECTPOINT, 83),
|
CINIT(SSL_CIPHER_LIST, STRINGPOINT, 83),
|
||||||
|
|
||||||
/* Specify which HTTP version to use! This must be set to one of the
|
/* Specify which HTTP version to use! This must be set to one of the
|
||||||
CURL_HTTP_VERSION* enums set below. */
|
CURL_HTTP_VERSION* enums set below. */
|
||||||
@@ -1123,16 +1138,16 @@ typedef enum {
|
|||||||
CINIT(FTP_USE_EPSV, LONG, 85),
|
CINIT(FTP_USE_EPSV, LONG, 85),
|
||||||
|
|
||||||
/* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") */
|
/* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") */
|
||||||
CINIT(SSLCERTTYPE, OBJECTPOINT, 86),
|
CINIT(SSLCERTTYPE, STRINGPOINT, 86),
|
||||||
|
|
||||||
/* name of the file keeping your private SSL-key */
|
/* name of the file keeping your private SSL-key */
|
||||||
CINIT(SSLKEY, OBJECTPOINT, 87),
|
CINIT(SSLKEY, STRINGPOINT, 87),
|
||||||
|
|
||||||
/* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") */
|
/* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") */
|
||||||
CINIT(SSLKEYTYPE, OBJECTPOINT, 88),
|
CINIT(SSLKEYTYPE, STRINGPOINT, 88),
|
||||||
|
|
||||||
/* crypto engine for the SSL-sub system */
|
/* crypto engine for the SSL-sub system */
|
||||||
CINIT(SSLENGINE, OBJECTPOINT, 89),
|
CINIT(SSLENGINE, STRINGPOINT, 89),
|
||||||
|
|
||||||
/* set the crypto engine for the SSL-sub system as default
|
/* set the crypto engine for the SSL-sub system as default
|
||||||
the param has no meaning...
|
the param has no meaning...
|
||||||
@@ -1159,7 +1174,7 @@ typedef enum {
|
|||||||
|
|
||||||
/* The CApath directory used to validate the peer certificate
|
/* The CApath directory used to validate the peer certificate
|
||||||
this option is used only if SSL_VERIFYPEER is true */
|
this option is used only if SSL_VERIFYPEER is true */
|
||||||
CINIT(CAPATH, OBJECTPOINT, 97),
|
CINIT(CAPATH, STRINGPOINT, 97),
|
||||||
|
|
||||||
/* Instruct libcurl to use a smaller receive buffer */
|
/* Instruct libcurl to use a smaller receive buffer */
|
||||||
CINIT(BUFFERSIZE, LONG, 98),
|
CINIT(BUFFERSIZE, LONG, 98),
|
||||||
@@ -1179,7 +1194,7 @@ typedef enum {
|
|||||||
/* Set the Accept-Encoding string. Use this to tell a server you would like
|
/* Set the Accept-Encoding string. Use this to tell a server you would like
|
||||||
the response to be compressed. Before 7.21.6, this was known as
|
the response to be compressed. Before 7.21.6, this was known as
|
||||||
CURLOPT_ENCODING */
|
CURLOPT_ENCODING */
|
||||||
CINIT(ACCEPT_ENCODING, OBJECTPOINT, 102),
|
CINIT(ACCEPT_ENCODING, STRINGPOINT, 102),
|
||||||
|
|
||||||
/* Set pointer to private data */
|
/* Set pointer to private data */
|
||||||
CINIT(PRIVATE, OBJECTPOINT, 103),
|
CINIT(PRIVATE, OBJECTPOINT, 103),
|
||||||
@@ -1260,7 +1275,7 @@ typedef enum {
|
|||||||
to parse (using the CURLOPT_NETRC option). If not set, libcurl will do
|
to parse (using the CURLOPT_NETRC option). If not set, libcurl will do
|
||||||
a poor attempt to find the user's home directory and check for a .netrc
|
a poor attempt to find the user's home directory and check for a .netrc
|
||||||
file in there. */
|
file in there. */
|
||||||
CINIT(NETRC_FILE, OBJECTPOINT, 118),
|
CINIT(NETRC_FILE, STRINGPOINT, 118),
|
||||||
|
|
||||||
/* Enable SSL/TLS for FTP, pick one of:
|
/* Enable SSL/TLS for FTP, pick one of:
|
||||||
CURLUSESSL_TRY - try using SSL, proceed anyway otherwise
|
CURLUSESSL_TRY - try using SSL, proceed anyway otherwise
|
||||||
@@ -1303,10 +1318,10 @@ typedef enum {
|
|||||||
|
|
||||||
/* zero terminated string for pass on to the FTP server when asked for
|
/* zero terminated string for pass on to the FTP server when asked for
|
||||||
"account" info */
|
"account" info */
|
||||||
CINIT(FTP_ACCOUNT, OBJECTPOINT, 134),
|
CINIT(FTP_ACCOUNT, STRINGPOINT, 134),
|
||||||
|
|
||||||
/* feed cookies into cookie engine */
|
/* feed cookie into cookie engine */
|
||||||
CINIT(COOKIELIST, OBJECTPOINT, 135),
|
CINIT(COOKIELIST, STRINGPOINT, 135),
|
||||||
|
|
||||||
/* ignore Content-Length */
|
/* ignore Content-Length */
|
||||||
CINIT(IGNORE_CONTENT_LENGTH, LONG, 136),
|
CINIT(IGNORE_CONTENT_LENGTH, LONG, 136),
|
||||||
@@ -1352,7 +1367,7 @@ typedef enum {
|
|||||||
CINIT(MAX_RECV_SPEED_LARGE, OFF_T, 146),
|
CINIT(MAX_RECV_SPEED_LARGE, OFF_T, 146),
|
||||||
|
|
||||||
/* Pointer to command string to send if USER/PASS fails. */
|
/* Pointer to command string to send if USER/PASS fails. */
|
||||||
CINIT(FTP_ALTERNATIVE_TO_USER, OBJECTPOINT, 147),
|
CINIT(FTP_ALTERNATIVE_TO_USER, STRINGPOINT, 147),
|
||||||
|
|
||||||
/* callback function for setting socket options */
|
/* callback function for setting socket options */
|
||||||
CINIT(SOCKOPTFUNCTION, FUNCTIONPOINT, 148),
|
CINIT(SOCKOPTFUNCTION, FUNCTIONPOINT, 148),
|
||||||
@@ -1366,8 +1381,8 @@ typedef enum {
|
|||||||
CINIT(SSH_AUTH_TYPES, LONG, 151),
|
CINIT(SSH_AUTH_TYPES, LONG, 151),
|
||||||
|
|
||||||
/* Used by scp/sftp to do public/private key authentication */
|
/* Used by scp/sftp to do public/private key authentication */
|
||||||
CINIT(SSH_PUBLIC_KEYFILE, OBJECTPOINT, 152),
|
CINIT(SSH_PUBLIC_KEYFILE, STRINGPOINT, 152),
|
||||||
CINIT(SSH_PRIVATE_KEYFILE, OBJECTPOINT, 153),
|
CINIT(SSH_PRIVATE_KEYFILE, STRINGPOINT, 153),
|
||||||
|
|
||||||
/* Send CCC (Clear Command Channel) after authentication */
|
/* Send CCC (Clear Command Channel) after authentication */
|
||||||
CINIT(FTP_SSL_CCC, LONG, 154),
|
CINIT(FTP_SSL_CCC, LONG, 154),
|
||||||
@@ -1391,7 +1406,7 @@ typedef enum {
|
|||||||
CINIT(POSTREDIR, LONG, 161),
|
CINIT(POSTREDIR, LONG, 161),
|
||||||
|
|
||||||
/* used by scp/sftp to verify the host's public key */
|
/* used by scp/sftp to verify the host's public key */
|
||||||
CINIT(SSH_HOST_PUBLIC_KEY_MD5, OBJECTPOINT, 162),
|
CINIT(SSH_HOST_PUBLIC_KEY_MD5, STRINGPOINT, 162),
|
||||||
|
|
||||||
/* Callback function for opening socket (instead of socket(2)). Optionally,
|
/* Callback function for opening socket (instead of socket(2)). Optionally,
|
||||||
callback is able change the address or refuse to connect returning
|
callback is able change the address or refuse to connect returning
|
||||||
@@ -1411,10 +1426,10 @@ typedef enum {
|
|||||||
CINIT(SEEKDATA, OBJECTPOINT, 168),
|
CINIT(SEEKDATA, OBJECTPOINT, 168),
|
||||||
|
|
||||||
/* CRL file */
|
/* CRL file */
|
||||||
CINIT(CRLFILE, OBJECTPOINT, 169),
|
CINIT(CRLFILE, STRINGPOINT, 169),
|
||||||
|
|
||||||
/* Issuer certificate */
|
/* Issuer certificate */
|
||||||
CINIT(ISSUERCERT, OBJECTPOINT, 170),
|
CINIT(ISSUERCERT, STRINGPOINT, 170),
|
||||||
|
|
||||||
/* (IPv6) Address scope */
|
/* (IPv6) Address scope */
|
||||||
CINIT(ADDRESS_SCOPE, LONG, 171),
|
CINIT(ADDRESS_SCOPE, LONG, 171),
|
||||||
@@ -1424,12 +1439,12 @@ typedef enum {
|
|||||||
CINIT(CERTINFO, LONG, 172),
|
CINIT(CERTINFO, LONG, 172),
|
||||||
|
|
||||||
/* "name" and "pwd" to use when fetching. */
|
/* "name" and "pwd" to use when fetching. */
|
||||||
CINIT(USERNAME, OBJECTPOINT, 173),
|
CINIT(USERNAME, STRINGPOINT, 173),
|
||||||
CINIT(PASSWORD, OBJECTPOINT, 174),
|
CINIT(PASSWORD, STRINGPOINT, 174),
|
||||||
|
|
||||||
/* "name" and "pwd" to use with Proxy when fetching. */
|
/* "name" and "pwd" to use with Proxy when fetching. */
|
||||||
CINIT(PROXYUSERNAME, OBJECTPOINT, 175),
|
CINIT(PROXYUSERNAME, STRINGPOINT, 175),
|
||||||
CINIT(PROXYPASSWORD, OBJECTPOINT, 176),
|
CINIT(PROXYPASSWORD, STRINGPOINT, 176),
|
||||||
|
|
||||||
/* Comma separated list of hostnames defining no-proxy zones. These should
|
/* Comma separated list of hostnames defining no-proxy zones. These should
|
||||||
match both hostnames directly, and hostnames within a domain. For
|
match both hostnames directly, and hostnames within a domain. For
|
||||||
@@ -1438,13 +1453,13 @@ typedef enum {
|
|||||||
implementations of this, .local.com will be considered to be the same as
|
implementations of this, .local.com will be considered to be the same as
|
||||||
local.com. A single * is the only valid wildcard, and effectively
|
local.com. A single * is the only valid wildcard, and effectively
|
||||||
disables the use of proxy. */
|
disables the use of proxy. */
|
||||||
CINIT(NOPROXY, OBJECTPOINT, 177),
|
CINIT(NOPROXY, STRINGPOINT, 177),
|
||||||
|
|
||||||
/* block size for TFTP transfers */
|
/* block size for TFTP transfers */
|
||||||
CINIT(TFTP_BLKSIZE, LONG, 178),
|
CINIT(TFTP_BLKSIZE, LONG, 178),
|
||||||
|
|
||||||
/* Socks Service */
|
/* Socks Service */
|
||||||
CINIT(SOCKS5_GSSAPI_SERVICE, OBJECTPOINT, 179),
|
CINIT(SOCKS5_GSSAPI_SERVICE, STRINGPOINT, 179),
|
||||||
|
|
||||||
/* Socks Service */
|
/* Socks Service */
|
||||||
CINIT(SOCKS5_GSSAPI_NEC, LONG, 180),
|
CINIT(SOCKS5_GSSAPI_NEC, LONG, 180),
|
||||||
@@ -1462,7 +1477,7 @@ typedef enum {
|
|||||||
CINIT(REDIR_PROTOCOLS, LONG, 182),
|
CINIT(REDIR_PROTOCOLS, LONG, 182),
|
||||||
|
|
||||||
/* set the SSH knownhost file name to use */
|
/* set the SSH knownhost file name to use */
|
||||||
CINIT(SSH_KNOWNHOSTS, OBJECTPOINT, 183),
|
CINIT(SSH_KNOWNHOSTS, STRINGPOINT, 183),
|
||||||
|
|
||||||
/* set the SSH host key callback, must point to a curl_sshkeycallback
|
/* set the SSH host key callback, must point to a curl_sshkeycallback
|
||||||
function */
|
function */
|
||||||
@@ -1472,9 +1487,9 @@ typedef enum {
|
|||||||
CINIT(SSH_KEYDATA, OBJECTPOINT, 185),
|
CINIT(SSH_KEYDATA, OBJECTPOINT, 185),
|
||||||
|
|
||||||
/* set the SMTP mail originator */
|
/* set the SMTP mail originator */
|
||||||
CINIT(MAIL_FROM, OBJECTPOINT, 186),
|
CINIT(MAIL_FROM, STRINGPOINT, 186),
|
||||||
|
|
||||||
/* set the SMTP mail receiver(s) */
|
/* set the list of SMTP mail receiver(s) */
|
||||||
CINIT(MAIL_RCPT, OBJECTPOINT, 187),
|
CINIT(MAIL_RCPT, OBJECTPOINT, 187),
|
||||||
|
|
||||||
/* FTP: send PRET before PASV */
|
/* FTP: send PRET before PASV */
|
||||||
@@ -1484,13 +1499,13 @@ typedef enum {
|
|||||||
CINIT(RTSP_REQUEST, LONG, 189),
|
CINIT(RTSP_REQUEST, LONG, 189),
|
||||||
|
|
||||||
/* The RTSP session identifier */
|
/* The RTSP session identifier */
|
||||||
CINIT(RTSP_SESSION_ID, OBJECTPOINT, 190),
|
CINIT(RTSP_SESSION_ID, STRINGPOINT, 190),
|
||||||
|
|
||||||
/* The RTSP stream URI */
|
/* The RTSP stream URI */
|
||||||
CINIT(RTSP_STREAM_URI, OBJECTPOINT, 191),
|
CINIT(RTSP_STREAM_URI, STRINGPOINT, 191),
|
||||||
|
|
||||||
/* The Transport: header to use in RTSP requests */
|
/* The Transport: header to use in RTSP requests */
|
||||||
CINIT(RTSP_TRANSPORT, OBJECTPOINT, 192),
|
CINIT(RTSP_TRANSPORT, STRINGPOINT, 192),
|
||||||
|
|
||||||
/* Manually initialize the client RTSP CSeq for this handle */
|
/* Manually initialize the client RTSP CSeq for this handle */
|
||||||
CINIT(RTSP_CLIENT_CSEQ, LONG, 193),
|
CINIT(RTSP_CLIENT_CSEQ, LONG, 193),
|
||||||
@@ -1528,13 +1543,13 @@ typedef enum {
|
|||||||
CINIT(RESOLVE, OBJECTPOINT, 203),
|
CINIT(RESOLVE, OBJECTPOINT, 203),
|
||||||
|
|
||||||
/* Set a username for authenticated TLS */
|
/* Set a username for authenticated TLS */
|
||||||
CINIT(TLSAUTH_USERNAME, OBJECTPOINT, 204),
|
CINIT(TLSAUTH_USERNAME, STRINGPOINT, 204),
|
||||||
|
|
||||||
/* Set a password for authenticated TLS */
|
/* Set a password for authenticated TLS */
|
||||||
CINIT(TLSAUTH_PASSWORD, OBJECTPOINT, 205),
|
CINIT(TLSAUTH_PASSWORD, STRINGPOINT, 205),
|
||||||
|
|
||||||
/* Set authentication type for authenticated TLS */
|
/* Set authentication type for authenticated TLS */
|
||||||
CINIT(TLSAUTH_TYPE, OBJECTPOINT, 206),
|
CINIT(TLSAUTH_TYPE, STRINGPOINT, 206),
|
||||||
|
|
||||||
/* Set to 1 to enable the "TE:" header in HTTP requests to ask for
|
/* Set to 1 to enable the "TE:" header in HTTP requests to ask for
|
||||||
compressed transfer-encoded responses. Set to 0 to disable the use of TE:
|
compressed transfer-encoded responses. Set to 0 to disable the use of TE:
|
||||||
@@ -1557,7 +1572,7 @@ typedef enum {
|
|||||||
CINIT(GSSAPI_DELEGATION, LONG, 210),
|
CINIT(GSSAPI_DELEGATION, LONG, 210),
|
||||||
|
|
||||||
/* Set the name servers to use for DNS resolution */
|
/* Set the name servers to use for DNS resolution */
|
||||||
CINIT(DNS_SERVERS, OBJECTPOINT, 211),
|
CINIT(DNS_SERVERS, STRINGPOINT, 211),
|
||||||
|
|
||||||
/* Time-out accept operations (currently for FTP only) after this amount
|
/* Time-out accept operations (currently for FTP only) after this amount
|
||||||
of miliseconds. */
|
of miliseconds. */
|
||||||
@@ -1574,7 +1589,7 @@ typedef enum {
|
|||||||
CINIT(SSL_OPTIONS, LONG, 216),
|
CINIT(SSL_OPTIONS, LONG, 216),
|
||||||
|
|
||||||
/* Set the SMTP auth originator */
|
/* Set the SMTP auth originator */
|
||||||
CINIT(MAIL_AUTH, OBJECTPOINT, 217),
|
CINIT(MAIL_AUTH, STRINGPOINT, 217),
|
||||||
|
|
||||||
/* Enable/disable SASL initial response */
|
/* Enable/disable SASL initial response */
|
||||||
CINIT(SASL_IR, LONG, 218),
|
CINIT(SASL_IR, LONG, 218),
|
||||||
@@ -1585,23 +1600,23 @@ typedef enum {
|
|||||||
CINIT(XFERINFOFUNCTION, FUNCTIONPOINT, 219),
|
CINIT(XFERINFOFUNCTION, FUNCTIONPOINT, 219),
|
||||||
|
|
||||||
/* The XOAUTH2 bearer token */
|
/* The XOAUTH2 bearer token */
|
||||||
CINIT(XOAUTH2_BEARER, OBJECTPOINT, 220),
|
CINIT(XOAUTH2_BEARER, STRINGPOINT, 220),
|
||||||
|
|
||||||
/* Set the interface string to use as outgoing network
|
/* Set the interface string to use as outgoing network
|
||||||
* interface for DNS requests.
|
* interface for DNS requests.
|
||||||
* Only supported by the c-ares DNS backend */
|
* Only supported by the c-ares DNS backend */
|
||||||
CINIT(DNS_INTERFACE, OBJECTPOINT, 221),
|
CINIT(DNS_INTERFACE, STRINGPOINT, 221),
|
||||||
|
|
||||||
/* Set the local IPv4 address to use for outgoing DNS requests.
|
/* Set the local IPv4 address to use for outgoing DNS requests.
|
||||||
* Only supported by the c-ares DNS backend */
|
* Only supported by the c-ares DNS backend */
|
||||||
CINIT(DNS_LOCAL_IP4, OBJECTPOINT, 222),
|
CINIT(DNS_LOCAL_IP4, STRINGPOINT, 222),
|
||||||
|
|
||||||
/* Set the local IPv4 address to use for outgoing DNS requests.
|
/* Set the local IPv4 address to use for outgoing DNS requests.
|
||||||
* Only supported by the c-ares DNS backend */
|
* Only supported by the c-ares DNS backend */
|
||||||
CINIT(DNS_LOCAL_IP6, OBJECTPOINT, 223),
|
CINIT(DNS_LOCAL_IP6, STRINGPOINT, 223),
|
||||||
|
|
||||||
/* Set authentication options directly */
|
/* Set authentication options directly */
|
||||||
CINIT(LOGIN_OPTIONS, OBJECTPOINT, 224),
|
CINIT(LOGIN_OPTIONS, STRINGPOINT, 224),
|
||||||
|
|
||||||
/* Enable/disable TLS NPN extension (http2 over ssl might fail without) */
|
/* Enable/disable TLS NPN extension (http2 over ssl might fail without) */
|
||||||
CINIT(SSL_ENABLE_NPN, LONG, 225),
|
CINIT(SSL_ENABLE_NPN, LONG, 225),
|
||||||
@@ -1622,10 +1637,10 @@ typedef enum {
|
|||||||
|
|
||||||
/* The public key in DER form used to validate the peer public key
|
/* The public key in DER form used to validate the peer public key
|
||||||
this option is used only if SSL_VERIFYPEER is true */
|
this option is used only if SSL_VERIFYPEER is true */
|
||||||
CINIT(PINNEDPUBLICKEY, OBJECTPOINT, 230),
|
CINIT(PINNEDPUBLICKEY, STRINGPOINT, 230),
|
||||||
|
|
||||||
/* Path to Unix domain socket */
|
/* Path to Unix domain socket */
|
||||||
CINIT(UNIX_SOCKET_PATH, OBJECTPOINT, 231),
|
CINIT(UNIX_SOCKET_PATH, STRINGPOINT, 231),
|
||||||
|
|
||||||
/* Set if we should verify the certificate status. */
|
/* Set if we should verify the certificate status. */
|
||||||
CINIT(SSL_VERIFYSTATUS, LONG, 232),
|
CINIT(SSL_VERIFYSTATUS, LONG, 232),
|
||||||
@@ -1637,16 +1652,25 @@ typedef enum {
|
|||||||
CINIT(PATH_AS_IS, LONG, 234),
|
CINIT(PATH_AS_IS, LONG, 234),
|
||||||
|
|
||||||
/* Proxy Service Name */
|
/* Proxy Service Name */
|
||||||
CINIT(PROXY_SERVICE_NAME, OBJECTPOINT, 235),
|
CINIT(PROXY_SERVICE_NAME, STRINGPOINT, 235),
|
||||||
|
|
||||||
/* Service Name */
|
/* Service Name */
|
||||||
CINIT(SERVICE_NAME, OBJECTPOINT, 236),
|
CINIT(SERVICE_NAME, STRINGPOINT, 236),
|
||||||
|
|
||||||
/* Wait/don't wait for pipe/mutex to clarify */
|
/* Wait/don't wait for pipe/mutex to clarify */
|
||||||
CINIT(PIPEWAIT, LONG, 237),
|
CINIT(PIPEWAIT, LONG, 237),
|
||||||
|
|
||||||
/* Set the protocol used when curl is given a URL without a protocol */
|
/* Set the protocol used when curl is given a URL without a protocol */
|
||||||
CINIT(DEFAULT_PROTOCOL, OBJECTPOINT, 238),
|
CINIT(DEFAULT_PROTOCOL, STRINGPOINT, 238),
|
||||||
|
|
||||||
|
/* Set stream weight, 1 - 256 (default is 16) */
|
||||||
|
CINIT(STREAM_WEIGHT, LONG, 239),
|
||||||
|
|
||||||
|
/* Set stream dependency on another CURL handle */
|
||||||
|
CINIT(STREAM_DEPENDS, OBJECTPOINT, 240),
|
||||||
|
|
||||||
|
/* Set E-xclusive stream dependency on another CURL handle */
|
||||||
|
CINIT(STREAM_DEPENDS_E, OBJECTPOINT, 241),
|
||||||
|
|
||||||
CURLOPT_LASTENTRY /* the last unused */
|
CURLOPT_LASTENTRY /* the last unused */
|
||||||
} CURLoption;
|
} CURLoption;
|
||||||
@@ -1822,6 +1846,7 @@ typedef enum {
|
|||||||
CFINIT(OBSOLETE2),
|
CFINIT(OBSOLETE2),
|
||||||
|
|
||||||
CFINIT(STREAM),
|
CFINIT(STREAM),
|
||||||
|
CFINIT(CONTENTLEN), /* added in 7.46.0, provide a curl_off_t length */
|
||||||
|
|
||||||
CURLFORM_LASTENTRY /* the last unused */
|
CURLFORM_LASTENTRY /* the last unused */
|
||||||
} CURLformoption;
|
} CURLformoption;
|
||||||
@@ -2076,7 +2101,8 @@ typedef enum {
|
|||||||
CURLSSLBACKEND_CYASSL = 7,
|
CURLSSLBACKEND_CYASSL = 7,
|
||||||
CURLSSLBACKEND_SCHANNEL = 8,
|
CURLSSLBACKEND_SCHANNEL = 8,
|
||||||
CURLSSLBACKEND_DARWINSSL = 9,
|
CURLSSLBACKEND_DARWINSSL = 9,
|
||||||
CURLSSLBACKEND_AXTLS = 10
|
CURLSSLBACKEND_AXTLS = 10,
|
||||||
|
CURLSSLBACKEND_MBEDTLS = 11
|
||||||
} curl_sslbackend;
|
} curl_sslbackend;
|
||||||
|
|
||||||
/* Information about the SSL library used and the respective internal SSL
|
/* Information about the SSL library used and the respective internal SSL
|
||||||
|
|||||||
@@ -528,7 +528,8 @@
|
|||||||
|
|
||||||
#elif defined(__GNUC__)
|
#elif defined(__GNUC__)
|
||||||
# if defined(__ILP32__) || \
|
# if defined(__ILP32__) || \
|
||||||
defined(__i386__) || defined(__ppc__) || defined(__arm__) || defined(__sparc__)
|
defined(__i386__) || defined(__ppc__) || defined(__arm__) || \
|
||||||
|
defined(__sparc__) || defined(__mips__) || defined(__sh__)
|
||||||
# define CURL_SIZEOF_LONG 4
|
# define CURL_SIZEOF_LONG 4
|
||||||
# define CURL_TYPEOF_CURL_OFF_T long long
|
# define CURL_TYPEOF_CURL_OFF_T long long
|
||||||
# define CURL_FORMAT_CURL_OFF_T "lld"
|
# define CURL_FORMAT_CURL_OFF_T "lld"
|
||||||
|
|||||||
@@ -30,12 +30,12 @@
|
|||||||
|
|
||||||
/* This is the version number of the libcurl package from which this header
|
/* This is the version number of the libcurl package from which this header
|
||||||
file origins: */
|
file origins: */
|
||||||
#define LIBCURL_VERSION "7.45.0-DEV"
|
#define LIBCURL_VERSION "7.46.0-DEV"
|
||||||
|
|
||||||
/* The numeric version number is also available "in parts" by using these
|
/* The numeric version number is also available "in parts" by using these
|
||||||
defines: */
|
defines: */
|
||||||
#define LIBCURL_VERSION_MAJOR 7
|
#define LIBCURL_VERSION_MAJOR 7
|
||||||
#define LIBCURL_VERSION_MINOR 45
|
#define LIBCURL_VERSION_MINOR 46
|
||||||
#define LIBCURL_VERSION_PATCH 0
|
#define LIBCURL_VERSION_PATCH 0
|
||||||
|
|
||||||
/* This is the numeric version of the libcurl version number, meant for easier
|
/* This is the numeric version of the libcurl version number, meant for easier
|
||||||
@@ -57,7 +57,7 @@
|
|||||||
CURL_VERSION_BITS() macro since curl's own configure script greps for it
|
CURL_VERSION_BITS() macro since curl's own configure script greps for it
|
||||||
and needs it to contain the full number.
|
and needs it to contain the full number.
|
||||||
*/
|
*/
|
||||||
#define LIBCURL_VERSION_NUM 0x072D00
|
#define LIBCURL_VERSION_NUM 0x072E00
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is the date and time when the full source package was created. The
|
* This is the date and time when the full source package was created. The
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -218,60 +218,67 @@ _CURL_WARNING(_curl_easy_getinfo_err_curl_slist,
|
|||||||
|
|
||||||
/* evaluates to true if option takes a char* argument */
|
/* evaluates to true if option takes a char* argument */
|
||||||
#define _curl_is_string_option(option) \
|
#define _curl_is_string_option(option) \
|
||||||
((option) == CURLOPT_URL || \
|
((option) == CURLOPT_ACCEPT_ENCODING || \
|
||||||
(option) == CURLOPT_PROXY || \
|
(option) == CURLOPT_CAINFO || \
|
||||||
(option) == CURLOPT_INTERFACE || \
|
(option) == CURLOPT_CAPATH || \
|
||||||
(option) == CURLOPT_NETRC_FILE || \
|
|
||||||
(option) == CURLOPT_USERPWD || \
|
|
||||||
(option) == CURLOPT_USERNAME || \
|
|
||||||
(option) == CURLOPT_PASSWORD || \
|
|
||||||
(option) == CURLOPT_PROXYUSERPWD || \
|
|
||||||
(option) == CURLOPT_PROXYUSERNAME || \
|
|
||||||
(option) == CURLOPT_PROXYPASSWORD || \
|
|
||||||
(option) == CURLOPT_NOPROXY || \
|
|
||||||
(option) == CURLOPT_ACCEPT_ENCODING || \
|
|
||||||
(option) == CURLOPT_REFERER || \
|
|
||||||
(option) == CURLOPT_USERAGENT || \
|
|
||||||
(option) == CURLOPT_COOKIE || \
|
(option) == CURLOPT_COOKIE || \
|
||||||
(option) == CURLOPT_COOKIEFILE || \
|
(option) == CURLOPT_COOKIEFILE || \
|
||||||
(option) == CURLOPT_COOKIEJAR || \
|
(option) == CURLOPT_COOKIEJAR || \
|
||||||
(option) == CURLOPT_COOKIELIST || \
|
(option) == CURLOPT_COOKIELIST || \
|
||||||
(option) == CURLOPT_FTPPORT || \
|
|
||||||
(option) == CURLOPT_FTP_ALTERNATIVE_TO_USER || \
|
|
||||||
(option) == CURLOPT_FTP_ACCOUNT || \
|
|
||||||
(option) == CURLOPT_RANGE || \
|
|
||||||
(option) == CURLOPT_CUSTOMREQUEST || \
|
|
||||||
(option) == CURLOPT_SSLCERT || \
|
|
||||||
(option) == CURLOPT_SSLCERTTYPE || \
|
|
||||||
(option) == CURLOPT_SSLKEY || \
|
|
||||||
(option) == CURLOPT_SSLKEYTYPE || \
|
|
||||||
(option) == CURLOPT_KEYPASSWD || \
|
|
||||||
(option) == CURLOPT_SSLENGINE || \
|
|
||||||
(option) == CURLOPT_CAINFO || \
|
|
||||||
(option) == CURLOPT_CAPATH || \
|
|
||||||
(option) == CURLOPT_RANDOM_FILE || \
|
|
||||||
(option) == CURLOPT_EGDSOCKET || \
|
|
||||||
(option) == CURLOPT_SSL_CIPHER_LIST || \
|
|
||||||
(option) == CURLOPT_KRBLEVEL || \
|
|
||||||
(option) == CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 || \
|
|
||||||
(option) == CURLOPT_SSH_PUBLIC_KEYFILE || \
|
|
||||||
(option) == CURLOPT_SSH_PRIVATE_KEYFILE || \
|
|
||||||
(option) == CURLOPT_CRLFILE || \
|
(option) == CURLOPT_CRLFILE || \
|
||||||
(option) == CURLOPT_ISSUERCERT || \
|
(option) == CURLOPT_CUSTOMREQUEST || \
|
||||||
(option) == CURLOPT_SOCKS5_GSSAPI_SERVICE || \
|
(option) == CURLOPT_DEFAULT_PROTOCOL || \
|
||||||
(option) == CURLOPT_SSH_KNOWNHOSTS || \
|
|
||||||
(option) == CURLOPT_MAIL_FROM || \
|
|
||||||
(option) == CURLOPT_RTSP_SESSION_ID || \
|
|
||||||
(option) == CURLOPT_RTSP_STREAM_URI || \
|
|
||||||
(option) == CURLOPT_RTSP_TRANSPORT || \
|
|
||||||
(option) == CURLOPT_XOAUTH2_BEARER || \
|
|
||||||
(option) == CURLOPT_DNS_SERVERS || \
|
|
||||||
(option) == CURLOPT_DNS_INTERFACE || \
|
(option) == CURLOPT_DNS_INTERFACE || \
|
||||||
(option) == CURLOPT_DNS_LOCAL_IP4 || \
|
(option) == CURLOPT_DNS_LOCAL_IP4 || \
|
||||||
(option) == CURLOPT_DNS_LOCAL_IP6 || \
|
(option) == CURLOPT_DNS_LOCAL_IP6 || \
|
||||||
|
(option) == CURLOPT_DNS_SERVERS || \
|
||||||
|
(option) == CURLOPT_EGDSOCKET || \
|
||||||
|
(option) == CURLOPT_FTPPORT || \
|
||||||
|
(option) == CURLOPT_FTP_ACCOUNT || \
|
||||||
|
(option) == CURLOPT_FTP_ALTERNATIVE_TO_USER || \
|
||||||
|
(option) == CURLOPT_INTERFACE || \
|
||||||
|
(option) == CURLOPT_ISSUERCERT || \
|
||||||
|
(option) == CURLOPT_KEYPASSWD || \
|
||||||
|
(option) == CURLOPT_KRBLEVEL || \
|
||||||
(option) == CURLOPT_LOGIN_OPTIONS || \
|
(option) == CURLOPT_LOGIN_OPTIONS || \
|
||||||
|
(option) == CURLOPT_MAIL_AUTH || \
|
||||||
|
(option) == CURLOPT_MAIL_FROM || \
|
||||||
|
(option) == CURLOPT_NETRC_FILE || \
|
||||||
|
(option) == CURLOPT_NOPROXY || \
|
||||||
|
(option) == CURLOPT_PASSWORD || \
|
||||||
|
(option) == CURLOPT_PINNEDPUBLICKEY || \
|
||||||
|
(option) == CURLOPT_PROXY || \
|
||||||
|
(option) == CURLOPT_PROXYPASSWORD || \
|
||||||
|
(option) == CURLOPT_PROXYUSERNAME || \
|
||||||
|
(option) == CURLOPT_PROXYUSERPWD || \
|
||||||
(option) == CURLOPT_PROXY_SERVICE_NAME || \
|
(option) == CURLOPT_PROXY_SERVICE_NAME || \
|
||||||
|
(option) == CURLOPT_RANDOM_FILE || \
|
||||||
|
(option) == CURLOPT_RANGE || \
|
||||||
|
(option) == CURLOPT_REFERER || \
|
||||||
|
(option) == CURLOPT_RTSP_SESSION_ID || \
|
||||||
|
(option) == CURLOPT_RTSP_STREAM_URI || \
|
||||||
|
(option) == CURLOPT_RTSP_TRANSPORT || \
|
||||||
(option) == CURLOPT_SERVICE_NAME || \
|
(option) == CURLOPT_SERVICE_NAME || \
|
||||||
|
(option) == CURLOPT_SOCKS5_GSSAPI_SERVICE || \
|
||||||
|
(option) == CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 || \
|
||||||
|
(option) == CURLOPT_SSH_KNOWNHOSTS || \
|
||||||
|
(option) == CURLOPT_SSH_PRIVATE_KEYFILE || \
|
||||||
|
(option) == CURLOPT_SSH_PUBLIC_KEYFILE || \
|
||||||
|
(option) == CURLOPT_SSLCERT || \
|
||||||
|
(option) == CURLOPT_SSLCERTTYPE || \
|
||||||
|
(option) == CURLOPT_SSLENGINE || \
|
||||||
|
(option) == CURLOPT_SSLKEY || \
|
||||||
|
(option) == CURLOPT_SSLKEYTYPE || \
|
||||||
|
(option) == CURLOPT_SSL_CIPHER_LIST || \
|
||||||
|
(option) == CURLOPT_TLSAUTH_PASSWORD || \
|
||||||
|
(option) == CURLOPT_TLSAUTH_TYPE || \
|
||||||
|
(option) == CURLOPT_TLSAUTH_USERNAME || \
|
||||||
|
(option) == CURLOPT_UNIX_SOCKET_PATH || \
|
||||||
|
(option) == CURLOPT_URL || \
|
||||||
|
(option) == CURLOPT_USERAGENT || \
|
||||||
|
(option) == CURLOPT_USERNAME || \
|
||||||
|
(option) == CURLOPT_USERPWD || \
|
||||||
|
(option) == CURLOPT_XOAUTH2_BEARER || \
|
||||||
0)
|
0)
|
||||||
|
|
||||||
/* evaluates to true if option takes a curl_write_callback argument */
|
/* evaluates to true if option takes a curl_write_callback argument */
|
||||||
@@ -287,21 +294,22 @@ _CURL_WARNING(_curl_easy_getinfo_err_curl_slist,
|
|||||||
|
|
||||||
/* evaluates to true if option takes a data argument to pass to a callback */
|
/* evaluates to true if option takes a data argument to pass to a callback */
|
||||||
#define _curl_is_cb_data_option(option) \
|
#define _curl_is_cb_data_option(option) \
|
||||||
((option) == CURLOPT_WRITEDATA || \
|
((option) == CURLOPT_CHUNK_DATA || \
|
||||||
(option) == CURLOPT_READDATA || \
|
(option) == CURLOPT_CLOSESOCKETDATA || \
|
||||||
(option) == CURLOPT_IOCTLDATA || \
|
|
||||||
(option) == CURLOPT_SOCKOPTDATA || \
|
|
||||||
(option) == CURLOPT_OPENSOCKETDATA || \
|
|
||||||
(option) == CURLOPT_PROGRESSDATA || \
|
|
||||||
(option) == CURLOPT_HEADERDATA || \
|
|
||||||
(option) == CURLOPT_DEBUGDATA || \
|
(option) == CURLOPT_DEBUGDATA || \
|
||||||
(option) == CURLOPT_SSL_CTX_DATA || \
|
|
||||||
(option) == CURLOPT_SEEKDATA || \
|
|
||||||
(option) == CURLOPT_PRIVATE || \
|
|
||||||
(option) == CURLOPT_SSH_KEYDATA || \
|
|
||||||
(option) == CURLOPT_INTERLEAVEDATA || \
|
|
||||||
(option) == CURLOPT_CHUNK_DATA || \
|
|
||||||
(option) == CURLOPT_FNMATCH_DATA || \
|
(option) == CURLOPT_FNMATCH_DATA || \
|
||||||
|
(option) == CURLOPT_HEADERDATA || \
|
||||||
|
(option) == CURLOPT_INTERLEAVEDATA || \
|
||||||
|
(option) == CURLOPT_IOCTLDATA || \
|
||||||
|
(option) == CURLOPT_OPENSOCKETDATA || \
|
||||||
|
(option) == CURLOPT_PRIVATE || \
|
||||||
|
(option) == CURLOPT_PROGRESSDATA || \
|
||||||
|
(option) == CURLOPT_READDATA || \
|
||||||
|
(option) == CURLOPT_SEEKDATA || \
|
||||||
|
(option) == CURLOPT_SOCKOPTDATA || \
|
||||||
|
(option) == CURLOPT_SSH_KEYDATA || \
|
||||||
|
(option) == CURLOPT_SSL_CTX_DATA || \
|
||||||
|
(option) == CURLOPT_WRITEDATA || \
|
||||||
0)
|
0)
|
||||||
|
|
||||||
/* evaluates to true if option takes a POST data argument (void* or char*) */
|
/* evaluates to true if option takes a POST data argument (void* or char*) */
|
||||||
@@ -312,13 +320,15 @@ _CURL_WARNING(_curl_easy_getinfo_err_curl_slist,
|
|||||||
|
|
||||||
/* evaluates to true if option takes a struct curl_slist * argument */
|
/* evaluates to true if option takes a struct curl_slist * argument */
|
||||||
#define _curl_is_slist_option(option) \
|
#define _curl_is_slist_option(option) \
|
||||||
((option) == CURLOPT_HTTPHEADER || \
|
((option) == CURLOPT_HTTP200ALIASES || \
|
||||||
(option) == CURLOPT_HTTP200ALIASES || \
|
(option) == CURLOPT_HTTPHEADER || \
|
||||||
(option) == CURLOPT_QUOTE || \
|
(option) == CURLOPT_MAIL_RCPT || \
|
||||||
(option) == CURLOPT_POSTQUOTE || \
|
(option) == CURLOPT_POSTQUOTE || \
|
||||||
(option) == CURLOPT_PREQUOTE || \
|
(option) == CURLOPT_PREQUOTE || \
|
||||||
|
(option) == CURLOPT_PROXYHEADER || \
|
||||||
|
(option) == CURLOPT_QUOTE || \
|
||||||
|
(option) == CURLOPT_RESOLVE || \
|
||||||
(option) == CURLOPT_TELNETOPTIONS || \
|
(option) == CURLOPT_TELNETOPTIONS || \
|
||||||
(option) == CURLOPT_MAIL_RCPT || \
|
|
||||||
0)
|
0)
|
||||||
|
|
||||||
/* groups of curl_easy_getinfo infos that take the same type of argument */
|
/* groups of curl_easy_getinfo infos that take the same type of argument */
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
# | (__| |_| | _ <| |___
|
# | (__| |_| | _ <| |___
|
||||||
# \___|\___/|_| \_\_____|
|
# \___|\___/|_| \_\_____|
|
||||||
#
|
#
|
||||||
# Copyright (C) 2005 - 2009, Gisle Vanem <gvanem@broadpark.no>.
|
# Copyright (C) 2005 - 2009, Gisle Vanem <gvanem@yahoo.no>.
|
||||||
# Copyright (C) 2005 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
# Copyright (C) 2005 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
#
|
#
|
||||||
# This software is licensed as described in the file COPYING, which
|
# This software is licensed as described in the file COPYING, which
|
||||||
|
|||||||
@@ -22,11 +22,13 @@
|
|||||||
|
|
||||||
LIB_VTLS_CFILES = vtls/openssl.c vtls/gtls.c vtls/vtls.c vtls/nss.c \
|
LIB_VTLS_CFILES = vtls/openssl.c vtls/gtls.c vtls/vtls.c vtls/nss.c \
|
||||||
vtls/polarssl.c vtls/polarssl_threadlock.c vtls/axtls.c \
|
vtls/polarssl.c vtls/polarssl_threadlock.c vtls/axtls.c \
|
||||||
vtls/cyassl.c vtls/schannel.c vtls/darwinssl.c vtls/gskit.c
|
vtls/cyassl.c vtls/schannel.c vtls/darwinssl.c vtls/gskit.c \
|
||||||
|
vtls/mbedtls.c
|
||||||
|
|
||||||
LIB_VTLS_HFILES = vtls/openssl.h vtls/vtls.h vtls/gtls.h \
|
LIB_VTLS_HFILES = vtls/openssl.h vtls/vtls.h vtls/gtls.h \
|
||||||
vtls/nssg.h vtls/polarssl.h vtls/polarssl_threadlock.h vtls/axtls.h \
|
vtls/nssg.h vtls/polarssl.h vtls/polarssl_threadlock.h vtls/axtls.h \
|
||||||
vtls/cyassl.h vtls/schannel.h vtls/darwinssl.h vtls/gskit.h
|
vtls/cyassl.h vtls/schannel.h vtls/darwinssl.h vtls/gskit.h \
|
||||||
|
vtls/mbedtls.h
|
||||||
|
|
||||||
LIB_CFILES = file.c timeval.c base64.c hostip.c progress.c formdata.c \
|
LIB_CFILES = file.c timeval.c base64.c hostip.c progress.c formdata.c \
|
||||||
cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c \
|
cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c \
|
||||||
|
|||||||
@@ -143,6 +143,11 @@ sub scanfile {
|
|||||||
checkwarn($line, length($1), $file, $l, "Trailing whitespace");
|
checkwarn($line, length($1), $file, $l, "Trailing whitespace");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# crude attempt to detect // comments without too many false
|
||||||
|
# positives
|
||||||
|
if($l =~ /^([^"\*]*)[^:"]\/\//) {
|
||||||
|
checkwarn($line, length($1), $file, $l, "\/\/ comment");
|
||||||
|
}
|
||||||
# check spaces after for/if/while
|
# check spaces after for/if/while
|
||||||
if($l =~ /^(.*)(for|if|while) \(/) {
|
if($l =~ /^(.*)(for|if|while) \(/) {
|
||||||
if($1 =~ / *\#/) {
|
if($1 =~ / *\#/) {
|
||||||
|
|||||||
@@ -8,3 +8,5 @@
|
|||||||
return fopen(file, "r"); /* VMS */
|
return fopen(file, "r"); /* VMS */
|
||||||
return fopen(file, "r", "rfm=stmlf", "ctx=stm");
|
return fopen(file, "r", "rfm=stmlf", "ctx=stm");
|
||||||
curl_memlog("FILE %s:%d fopen(\"%s\",\"%s\") = %p\n",
|
curl_memlog("FILE %s:%d fopen(\"%s\",\"%s\") = %p\n",
|
||||||
|
a URL as file://localhost//foo must be valid as well, to refer to
|
||||||
|
const char atom_specials[] = "(){ %*]";
|
||||||
|
|||||||
@@ -1242,10 +1242,10 @@ curl_socket_t Curl_getconnectinfo(struct SessionHandle *data,
|
|||||||
}
|
}
|
||||||
/* Minix 3.1 doesn't support any flags on recv; just assume socket is OK */
|
/* Minix 3.1 doesn't support any flags on recv; just assume socket is OK */
|
||||||
#ifdef MSG_PEEK
|
#ifdef MSG_PEEK
|
||||||
else {
|
else if(sockfd != CURL_SOCKET_BAD) {
|
||||||
/* use the socket */
|
/* use the socket */
|
||||||
char buf;
|
char buf;
|
||||||
if(recv((RECV_TYPE_ARG1)c->sock[FIRSTSOCKET], (RECV_TYPE_ARG2)&buf,
|
if(recv((RECV_TYPE_ARG1)sockfd, (RECV_TYPE_ARG2)&buf,
|
||||||
(RECV_TYPE_ARG3)1, (RECV_TYPE_ARG4)MSG_PEEK) == 0) {
|
(RECV_TYPE_ARG3)1, (RECV_TYPE_ARG4)MSG_PEEK) == 0) {
|
||||||
return CURL_SOCKET_BAD; /* FIN received */
|
return CURL_SOCKET_BAD; /* FIN received */
|
||||||
}
|
}
|
||||||
|
|||||||
21
lib/cookie.c
21
lib/cookie.c
@@ -84,6 +84,10 @@ Example set of cookies:
|
|||||||
|
|
||||||
#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
|
#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
|
||||||
|
|
||||||
|
#ifdef USE_LIBPSL
|
||||||
|
# include <libpsl.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "curl_printf.h"
|
#include "curl_printf.h"
|
||||||
#include "urldata.h"
|
#include "urldata.h"
|
||||||
#include "cookie.h"
|
#include "cookie.h"
|
||||||
@@ -379,6 +383,10 @@ Curl_cookie_add(struct SessionHandle *data,
|
|||||||
bool replace_old = FALSE;
|
bool replace_old = FALSE;
|
||||||
bool badcookie = FALSE; /* cookies are good by default. mmmmm yummy */
|
bool badcookie = FALSE; /* cookies are good by default. mmmmm yummy */
|
||||||
|
|
||||||
|
#ifdef USE_LIBPSL
|
||||||
|
const psl_ctx_t *psl;
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef CURL_DISABLE_VERBOSE_STRINGS
|
#ifdef CURL_DISABLE_VERBOSE_STRINGS
|
||||||
(void)data;
|
(void)data;
|
||||||
#endif
|
#endif
|
||||||
@@ -777,6 +785,19 @@ Curl_cookie_add(struct SessionHandle *data,
|
|||||||
/* at first, remove expired cookies */
|
/* at first, remove expired cookies */
|
||||||
remove_expired(c);
|
remove_expired(c);
|
||||||
|
|
||||||
|
#ifdef USE_LIBPSL
|
||||||
|
/* Check if the domain is a Public Suffix and if yes, ignore the cookie.
|
||||||
|
This needs a libpsl compiled with builtin data. */
|
||||||
|
if(co->domain && !isip(co->domain) && (psl = psl_builtin()) != NULL) {
|
||||||
|
if(psl_is_public_suffix(psl, co->domain)) {
|
||||||
|
infof(data, "cookie '%s' dropped, domain '%s' is a public suffix\n",
|
||||||
|
co->name, co->domain);
|
||||||
|
freecookie(co);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
clist = c->cookies;
|
clist = c->cookies;
|
||||||
replace_old = FALSE;
|
replace_old = FALSE;
|
||||||
while(clist) {
|
while(clist) {
|
||||||
|
|||||||
@@ -83,7 +83,8 @@ Curl_addrinfo *Curl_str2addr(char *dotted, int port);
|
|||||||
Curl_addrinfo *Curl_unix2addr(const char *path);
|
Curl_addrinfo *Curl_unix2addr(const char *path);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(CURLDEBUG) && defined(HAVE_FREEADDRINFO)
|
#if defined(CURLDEBUG) && defined(HAVE_GETADDRINFO) && \
|
||||||
|
defined(HAVE_FREEADDRINFO)
|
||||||
void
|
void
|
||||||
curl_dofreeaddrinfo(struct addrinfo *freethis,
|
curl_dofreeaddrinfo(struct addrinfo *freethis,
|
||||||
int line, const char *source);
|
int line, const char *source);
|
||||||
|
|||||||
@@ -24,6 +24,12 @@
|
|||||||
/* to disable FTP */
|
/* to disable FTP */
|
||||||
#cmakedefine CURL_DISABLE_FTP 1
|
#cmakedefine CURL_DISABLE_FTP 1
|
||||||
|
|
||||||
|
/* to disable GOPHER */
|
||||||
|
#cmakedefine CURL_DISABLE_GOPHER 1
|
||||||
|
|
||||||
|
/* to disable IMAP */
|
||||||
|
#cmakedefine CURL_DISABLE_IMAP 1
|
||||||
|
|
||||||
/* to disable HTTP */
|
/* to disable HTTP */
|
||||||
#cmakedefine CURL_DISABLE_HTTP 1
|
#cmakedefine CURL_DISABLE_HTTP 1
|
||||||
|
|
||||||
@@ -33,9 +39,24 @@
|
|||||||
/* to disable LDAPS */
|
/* to disable LDAPS */
|
||||||
#cmakedefine CURL_DISABLE_LDAPS 1
|
#cmakedefine CURL_DISABLE_LDAPS 1
|
||||||
|
|
||||||
|
/* to disable POP3 */
|
||||||
|
#cmakedefine CURL_DISABLE_POP3 1
|
||||||
|
|
||||||
/* to disable proxies */
|
/* to disable proxies */
|
||||||
#cmakedefine CURL_DISABLE_PROXY 1
|
#cmakedefine CURL_DISABLE_PROXY 1
|
||||||
|
|
||||||
|
/* to disable RTSP */
|
||||||
|
#cmakedefine CURL_DISABLE_RTSP 1
|
||||||
|
|
||||||
|
/* to disable RTMP */
|
||||||
|
#cmakedefine CURL_DISABLE_RTMP 1
|
||||||
|
|
||||||
|
/* to disable SMB */
|
||||||
|
#cmakedefine CURL_DISABLE_SMB 1
|
||||||
|
|
||||||
|
/* to disable SMTP */
|
||||||
|
#cmakedefine CURL_DISABLE_SMTP 1
|
||||||
|
|
||||||
/* to disable TELNET */
|
/* to disable TELNET */
|
||||||
#cmakedefine CURL_DISABLE_TELNET 1
|
#cmakedefine CURL_DISABLE_TELNET 1
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
|
|
||||||
#include "curl_setup.h"
|
#include "curl_setup.h"
|
||||||
|
|
||||||
#if defined(USE_NTLM) && (!defined(USE_OPENSSL) || defined(HAVE_BORINGSSL))
|
#if defined(USE_NTLM) && !defined(HAVE_DES_SET_ODD_PARITY)
|
||||||
|
|
||||||
/* Applies odd parity to the given byte array */
|
/* Applies odd parity to the given byte array */
|
||||||
void Curl_des_set_odd_parity(unsigned char *bytes, size_t length);
|
void Curl_des_set_odd_parity(unsigned char *bytes, size_t length);
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user