Patch level : 12.0

Files correlati     : 
omento            : Aggiornata cUrl alla ultima versione su Github: 7.56.1

git-svn-id: svn://10.65.10.50/branches/R_10_00@24202 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
mtollari 2017-11-27 14:17:52 +00:00
parent 99049dded0
commit 9fdb0030c4
474 changed files with 5004 additions and 12352 deletions

View File

@ -3,3 +3,5 @@ buildconf eol=lf
configure.ac eol=lf
*.m4 eol=lf
*.in eol=lf
*.am eol=lf
*.sh eol=lf

View File

@ -1,51 +1,58 @@
.deps
.libs
*.lib
*.pdb
*.asc
*.dll
*.exe
*.obj
*.asc
.*.swp
Debug
Release
*.exp
*.la
*.lib
*.lo
*.o
*.obj
*.pdb
*.pyc
*~
.*.sw?
.cproject
.deps
.dirstamp
.libs
.project
.settings
/.vs
/build/
/builds/
__pycache__
CHANGES.dist
Debug
INSTALL
Makefile
Makefile.in
Release
TAGS
aclocal.m4
aclocal.m4.bak
autom4te.cache
compile
config.cache
config.guess
config.log
config.status
config.sub
configure
curl-*.tar.bz2
curl-*.tar.gz
curl-*.tar.xz
curl-*.zip
curl-config
depcomp
install-sh
libcurl.pc
libtool
ltmain.sh
compile
curl-config
libcurl.pc
missing
curl-*.tar.gz
curl-*.tar.bz2
curl-*.tar.lzma
curl-*.zip
INSTALL
install-sh
*.o
*.lo
*.la
mkinstalldirs
tags
TAGS
*~
aclocal.m4.bak
CHANGES.dist
.project
.cproject
.settings
.dirstamp
test-driver
/build/
/builds/
scripts/_curl
curl_fuzzer
curl_fuzzer_seed_corpus.zip
libstandaloneengine.a

View File

@ -1,13 +1,201 @@
language: c
sudo: required
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.7
packages:
- cmake
- gcc-4.8
- lcov
- clang-3.7
- valgrind
- libev-dev
- libc-ares-dev
- g++-4.8
- libstdc++-4.8-dev
- stunnel4
- libidn2-0-dev
- libssh2-1-dev
- krb5-user
matrix:
include:
- os: linux
compiler: gcc
dist: trusty
env: T=normal C=--with-gssapi
- os: linux
compiler: gcc
dist: trusty
env: T=normal C="--disable-http --disable-smtp --disable-imap"
- os: linux
compiler: gcc
dist: trusty
env: T=normal C=--enable-ares
- os: linux
compiler: gcc
dist: trusty
env: T=normal BROTLI=yes
- os: linux
compiler: clang
dist: trusty
env: T=debug
- os: osx
compiler: gcc
env: T=debug
- os: osx
compiler: gcc
env: T=debug C=--enable-ares
- os: osx
compiler: gcc
env: T=debug C="--with-ssl=/usr/local/opt/openssl --with-libmetalink"
- os: osx
compiler: gcc
env: T=debug C="--with-ssl=/usr/local/opt/libressl --with-libmetalink"
- os: osx
compiler: clang
env: T=debug C="--without-ssl --with-darwinssl --with-libmetalink"
- os: osx
compiler: clang
env: T=normal
- os: linux
compiler: gcc
dist: trusty
env: T=cmake
- os: linux
compiler: clang
dist: trusty
env: T=cmake
- os: linux
compiler: gcc
dist: precise
env: T=coverage
- os: linux
compiler: gcc
dist: trusty
env: T=distcheck
- os: linux
compiler: clang
dist: trusty
env: T=fuzzer
install:
- pip install --user cpp-coveralls
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew update > /dev/null; fi
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew reinstall libtool > /dev/null; fi
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew install rtmpdump libssh2 c-ares libmetalink libressl nghttp2 libmetalink; fi
- if [ $TRAVIS_OS_NAME = linux ]; then
curl -L https://github.com/nghttp2/nghttp2/releases/download/v1.24.0/nghttp2-1.24.0.tar.gz |
tar xzf - &&
(cd nghttp2-1.24.0 && CXX="g++-4.8" ./configure --prefix=/usr --disable-threads --enable-app && make && sudo make install);
fi
before_script:
- ./buildconf
- ./buildconf
- |
# No brotli package available for Trusty. Download & compile from source.
# Cannot be done in the install script because cmake is needed.
if [ "$TRAVIS_OS_NAME" = linux -a "$BROTLI" ]; then
curl -L https://github.com/google/brotli/archive/v1.0.1.tar.gz |
tar xzf - &&
(
cd brotli-1.0.1 &&
cmake . -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=/usr/lib &&
make &&
sudo make install
)
fi
script: ./configure --enable-debug && make && make test-full
script:
- |
# Uncomment this when `coverage` runs on Trusty.
# set -eo pipefail
if [ "$T" = "coverage" ]; then
export CC="gcc-4.8"
./configure --enable-debug --disable-shared --enable-code-coverage
make
make TFLAGS=-n test-nonflaky
tests="1 2 3 4 5 6 7 8 9 10 200 201 202 300 301 302 500 501 502 503 504 506 507 508 509 510 511 512 513 514 515 516 517 518 519 600 601 800 801 802 803 900 901 902 903 1000 1001 1002 1004 1302 1303 1304 1305 1306 1308 1400 1401 1402 1404 1450 1451 1452 1502 1507 1508 1600 1602 1603 1605"
make "TFLAGS=-n -e $tests" test-nonflaky
make "TFLAGS=-n -t $tests" test-nonflaky
coveralls --gcov /usr/bin/gcov-4.8 --gcov-options '\-lp' -i src -e lib -e tests -e docs -b $PWD/src
coveralls --gcov /usr/bin/gcov-4.8 --gcov-options '\-lp' -e src -i lib -e tests -e docs -b $PWD/lib
fi
- |
set -eo pipefail
if [ "$T" = "debug" ]; then
./configure --enable-debug --enable-werror $C
make && make examples
make TFLAGS=-n test-nonflaky
fi
- |
set -eo pipefail
if [ "$T" = "normal" ]; then
./configure --enable-warnings --enable-werror $C
make && make examples
make test-nonflaky
fi
- |
set -eo pipefail
if [ "$T" = "cmake" ]; then
mkdir build
cd build
cmake ..
make
fi
- |
set -eo pipefail
if [ "$T" = "distcheck" ]; then
./configure
make
./maketgz 99.98.97
# verify in-tree build - and install it
(tar xf curl-99.98.97.tar.gz && \
cd curl-99.98.97 && \
./configure --prefix=$HOME/temp && \
make && \
make TFLAGS=1 test && \
make install)
# basic check of the installed files
bash scripts/installcheck.sh $HOME/temp
rm -rf curl-99.98.97
# verify out-of-tree build
(tar xf curl-99.98.97.tar.gz && \
mkdir build && \
cd build && \
../curl-99.98.97/configure && \
make && \
make TFLAGS=1 test)
# verify cmake build
rm -rf curl-99.98.97
(tar xf curl-99.98.97.tar.gz && \
cd curl-99.98.97 && \
mkdir build && \
cd build && \
cmake .. && \
make)
fi
- |
set -eo pipefail
if [ "$T" = "fuzzer" ]; then
# Download the fuzzer to a temporary folder
./tests/fuzz/download_fuzzer.sh /tmp/curl_fuzzer
compiler:
- clang
- gcc
export CURLSRC=$PWD
# Run the mainline fuzzer test
pushd /tmp/curl_fuzzer
./mainline.sh ${CURLSRC}
popd
fi
# whitelist branches to avoid testing feature branches twice (as branch and as pull request)
branches:
only:
- master
notifications:
email: false

File diff suppressed because it is too large Load Diff

View File

@ -38,7 +38,7 @@
# To check:
# (From Daniel Stenberg) The cmake build selected to run gcc with -fPIC on my box while the plain configure script did not.
# (From Daniel Stenberg) The gcc command line use neither -g nor any -O options. As a developer, I also treasure our configure scripts's --enable-debug option that sets a long range of "picky" compiler options.
cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake;${CMAKE_MODULE_PATH}")
include(Utilities)
include(Macros)
@ -366,7 +366,6 @@ if(CMAKE_USE_OPENSSL)
check_include_file("openssl/engine.h" HAVE_OPENSSL_ENGINE_H)
check_include_file("openssl/err.h" HAVE_OPENSSL_ERR_H)
check_include_file("openssl/pem.h" HAVE_OPENSSL_PEM_H)
check_include_file("openssl/pkcs12.h" HAVE_OPENSSL_PKCS12_H)
check_include_file("openssl/rsa.h" HAVE_OPENSSL_RSA_H)
check_include_file("openssl/ssl.h" HAVE_OPENSSL_SSL_H)
check_include_file("openssl/x509.h" HAVE_OPENSSL_X509_H)
@ -875,10 +874,12 @@ check_symbol_exists(ftruncate "${CURL_INCLUDES}" HAVE_FTRUNCATE)
check_symbol_exists(getprotobyname "${CURL_INCLUDES}" HAVE_GETPROTOBYNAME)
check_symbol_exists(getrlimit "${CURL_INCLUDES}" HAVE_GETRLIMIT)
check_symbol_exists(setlocale "${CURL_INCLUDES}" HAVE_SETLOCALE)
check_symbol_exists(setmode "${CURL_INCLUDES}" HAVE_SETMODE)
check_symbol_exists(setrlimit "${CURL_INCLUDES}" HAVE_SETRLIMIT)
check_symbol_exists(fcntl "${CURL_INCLUDES}" HAVE_FCNTL)
check_symbol_exists(ioctl "${CURL_INCLUDES}" HAVE_IOCTL)
check_symbol_exists(setsockopt "${CURL_INCLUDES}" HAVE_SETSOCKOPT)
check_function_exists(mach_absolute_time HAVE_MACH_ABSOLUTE_TIME)
# symbol exists in win32, but function does not.
if(WIN32)
@ -1131,6 +1132,12 @@ function(TRANSFORM_MAKEFILE_INC INPUT_FILE OUTPUT_FILE)
endfunction()
if(WIN32 AND NOT CYGWIN)
set(CURL_INSTALL_CMAKE_DIR CMake)
else()
set(CURL_INSTALL_CMAKE_DIR lib/cmake/curl)
endif()
if(USE_MANUAL)
add_subdirectory(docs)
endif()
@ -1281,6 +1288,25 @@ install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/include/curl"
DESTINATION include
FILES_MATCHING PATTERN "*.h")
include(CMakePackageConfigHelpers)
write_basic_package_version_file(
"${PROJECT_BINARY_DIR}/curl-config-version.cmake"
VERSION ${CURL_VERSION}
COMPATIBILITY SameMajorVersion
)
configure_file(CMake/curl-config.cmake
"${PROJECT_BINARY_DIR}/curl-config.cmake"
COPYONLY
)
install(
FILES ${PROJECT_BINARY_DIR}/curl-config.cmake
${PROJECT_BINARY_DIR}/curl-config-version.cmake
DESTINATION ${CURL_INSTALL_CMAKE_DIR}
)
# Workaround for MSVS10 to avoid the Dialog Hell
# FIXME: This could be removed with future version of CMake.
if(MSVC_VERSION EQUAL 1600)

View File

@ -10,15 +10,6 @@ This file is only present in git - never in release archives. It contains
information about other files and things that the git repository keeps in its
inner sanctum.
Compile and build instructions follow below.
CHANGES.0 contains ancient changes
CHANGES contains the most recent changes
Makefile.dist is included as the root Makefile in distribution archives
perl/ is a subdirectory with various perl scripts
To build in environments that support configure, after having extracted
everything from git, do this:
@ -51,17 +42,3 @@ installed:
install them, you can rename the source file src/tool_hugehelp.c.cvs to
src/tool_hugehelp.c and avoid having to generate this file. This will
give you a stubbed version of the file that doesn't contain actual content.
MAC OS X
With Mac OS X 10.2 and the associated Developer Tools, the installed versions
of the build tools are adequate. For Mac OS X 10.1 users, Guido Neitzer
wrote the following step-by-step guide:
1. Install fink (http://fink.sourceforge.net)
2. Update fink to the newest version (with the installed fink)
3. Install the latest version of autoconf, automake and m4 with fink
4. Install version 1.4.1 of libtool - you find it in the "unstable" section
(read the manual to see how to get unstable versions)
5. Get cURL from git
6. Build cURL with "./buildconf", "./configure", "make", "sudo make install"

View File

@ -30,7 +30,8 @@ CMAKE_DIST = CMakeLists.txt CMake/CMakeConfigurableFile.in \
CMake/Macros.cmake \
CMake/CurlSymbolHiding.cmake CMake/FindCARES.cmake \
CMake/FindLibSSH2.cmake CMake/FindNGHTTP2.cmake \
CMake/FindMbedTLS.cmake CMake/cmake_uninstall.cmake.in
CMake/FindMbedTLS.cmake CMake/cmake_uninstall.cmake.in \
CMake/curl-config.cmake
VC6_LIBTMPL = projects/Windows/VC6/lib/libcurl.tmpl
VC6_LIBDSP = projects/Windows/VC6/lib/libcurl.dsp.dist
@ -210,9 +211,6 @@ test-am:
endif
fuzzer:
@(cd tests/fuzz; $(MAKE) all)
examples:
@(cd docs/examples; $(MAKE) check)

View File

@ -5,11 +5,11 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
# Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
# Copyright (C) 1998 - 2017, 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.
# are also available at https://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
@ -20,8 +20,6 @@
#
###########################################################################
VC=vc6
all:
./configure
make
@ -87,366 +85,13 @@ mingw32%:
$(MAKE) -C lib -f Makefile.m32 CFG=$@
$(MAKE) -C src -f Makefile.m32 CFG=$@
vc-clean: $(VC)
cd lib
nmake -f Makefile.$(VC) clean
cd ..\src
nmake -f Makefile.$(VC) clean
vc:
cd winbuild
nmake /f Makefile.vc MACHINE=x86
vc-all: $(VC)
cd lib
nmake -f Makefile.$(VC) cfg=release
nmake -f Makefile.$(VC) cfg=release-ssl
nmake -f Makefile.$(VC) cfg=release-zlib
nmake -f Makefile.$(VC) cfg=release-ssl-zlib
nmake -f Makefile.$(VC) cfg=release-ssl-dll
nmake -f Makefile.$(VC) cfg=release-zlib-dll
nmake -f Makefile.$(VC) cfg=release-ssl-dll-zlib-dll
nmake -f Makefile.$(VC) cfg=release-dll
nmake -f Makefile.$(VC) cfg=release-dll-ssl-dll
nmake -f Makefile.$(VC) cfg=release-dll-zlib-dll
nmake -f Makefile.$(VC) cfg=release-dll-ssl-dll-zlib-dll
nmake -f Makefile.$(VC) cfg=debug
nmake -f Makefile.$(VC) cfg=debug-ssl
nmake -f Makefile.$(VC) cfg=debug-zlib
nmake -f Makefile.$(VC) cfg=debug-ssl-zlib
nmake -f Makefile.$(VC) cfg=debug-ssl-dll
nmake -f Makefile.$(VC) cfg=debug-zlib-dll
nmake -f Makefile.$(VC) cfg=debug-ssl-dll-zlib-dll
nmake -f Makefile.$(VC) cfg=debug-dll
nmake -f Makefile.$(VC) cfg=debug-dll-ssl-dll
nmake -f Makefile.$(VC) cfg=debug-dll-zlib-dll
nmake -f Makefile.$(VC) cfg=debug-dll-ssl-dll-zlib-dll
vc: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release
cd ..\src
nmake /f Makefile.$(VC)
vc-x64: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release
vc-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release WINDOWS_SSPI=1
vc-x64-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release WINDOWS_SSPI=1
vc-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release USE_IDN=1
vc-x64-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release USE_IDN=1
vc-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release USE_IDN=1 WINDOWS_SSPI=1
vc-x64-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release USE_IDN=1 WINDOWS_SSPI=1
vc-zlib: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-zlib
cd ..\src
nmake /f Makefile.$(VC) cfg=release-zlib
vc-x64-zlib: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib
vc-zlib-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-zlib WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-zlib WINDOWS_SSPI=1
vc-x64-zlib-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib WINDOWS_SSPI=1
vc-zlib-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-zlib USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-zlib USE_IDN=1
vc-x64-zlib-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib USE_IDN=1
vc-zlib-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-zlib USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-zlib USE_IDN=1 WINDOWS_SSPI=1
vc-x64-zlib-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib USE_IDN=1 WINDOWS_SSPI=1
vc-ssl: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl
vc-x64-ssl: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl
vc-ssl-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl WINDOWS_SSPI=1
vc-x64-ssl-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl WINDOWS_SSPI=1
vc-ssl-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl USE_IDN=1
vc-x64-ssl-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl USE_IDN=1
vc-ssl-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl USE_IDN=1 WINDOWS_SSPI=1
vc-x64-ssl-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl USE_IDN=1 WINDOWS_SSPI=1
vc-ssl-zlib: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-zlib
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-zlib
vc-x64-ssl-zlib: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib
vc-ssl-zlib-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-zlib WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-zlib WINDOWS_SSPI=1
vc-x64-ssl-zlib-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib WINDOWS_SSPI=1
vc-ssl-zlib-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-zlib USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-zlib USE_IDN=1
vc-x64-ssl-zlib-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib USE_IDN=1
vc-ssl-zlib-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-zlib USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-zlib USE_IDN=1 WINDOWS_SSPI=1
vc-x64-ssl-zlib-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib USE_IDN=1 WINDOWS_SSPI=1
vc-ssl-ssh2-zlib: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-ssh2-zlib
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-ssh2-zlib
vc-x64-ssl-ssh2-zlib: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-ssh2-zlib
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-ssh2-zlib
vc-ssl-ssh2-zlib-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-ssh2-zlib WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-ssh2-zlib WINDOWS_SSPI=1
vc-x64-ssl-ssh2-zlib-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-ssh2-zlib WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-ssh2-zlib WINDOWS_SSPI=1
vc-ssl-ssh2-zlib-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-ssh2-zlib USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-ssh2-zlib USE_IDN=1
vc-x64-ssl-ssh2-zlib-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-ssh2-zlib USE_IDN=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-ssh2-zlib USE_IDN=1
vc-ssl-ssh2-zlib-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-ssh2-zlib USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-ssh2-zlib USE_IDN=1 WINDOWS_SSPI=1
vc-x64-ssl-ssh2-zlib-idn-sspi: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-ssh2-zlib USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-ssh2-zlib USE_IDN=1 WINDOWS_SSPI=1
vc-winssl: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-winssl WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-winssl WINDOWS_SSPI=1
vc-x64-winssl: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl WINDOWS_SSPI=1
vc-winssl-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-winssl USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-winssl USE_IDN=1 WINDOWS_SSPI=1
vc-x64-winssl-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl USE_IDN=1 WINDOWS_SSPI=1
vc-winssl-zlib: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-winssl-zlib WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-winssl-zlib WINDOWS_SSPI=1
vc-x64-winssl-zlib: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl-zlib WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl-zlib WINDOWS_SSPI=1
vc-winssl-zlib-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-winssl-zlib USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) cfg=release-winssl-zlib USE_IDN=1 WINDOWS_SSPI=1
vc-x64-winssl-zlib-idn: $(VC)
cd lib
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl-zlib USE_IDN=1 WINDOWS_SSPI=1
cd ..\src
nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl-zlib USE_IDN=1 WINDOWS_SSPI=1
vc-ssl-dll: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-dll
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-dll
vc-dll-ssl-dll: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-dll-ssl-dll
cd ..\src
nmake /f Makefile.$(VC) cfg=release-dll-ssl-dll
vc-dll: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-dll
cd ..\src
nmake /f Makefile.$(VC) cfg=release-dll
vc-dll-zlib-dll: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-dll-zlib-dll
cd ..\src
nmake /f Makefile.$(VC) cfg=release-dll-zlib-dll
vc-dll-ssl-dll-zlib-dll: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-dll-ssl-dll-zlib-dll
cd ..\src
nmake /f Makefile.$(VC) cfg=release-dll-ssl-dll-zlib-dll
vc-ssl-dll-zlib-dll: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-ssl-dll-zlib-dll
cd ..\src
nmake /f Makefile.$(VC) cfg=release-ssl-dll-zlib-dll
vc-zlib-dll: $(VC)
cd lib
nmake /f Makefile.$(VC) cfg=release-zlib-dll
cd ..\src
nmake /f Makefile.$(VC) cfg=release-zlib-dll
vc-x64:
cd winbuild
nmake /f Makefile.vc MACHINE=x64
djgpp:
$(MAKE) -C lib -f Makefile.dj
@ -497,75 +142,6 @@ linux: all
linux-ssl: ssl
# We don't need to do anything for vc6.
vc6:
# VC7 makefiles are for use with VS.NET and VS.NET 2003
vc7: lib/Makefile.vc7 src/Makefile.vc7
lib/Makefile.vc7: lib/Makefile.vc6
@echo "generate $@"
@sed -e "s/VC6/VC7/g" lib/Makefile.vc6 > lib/Makefile.vc7
src/Makefile.vc7: src/Makefile.vc6
@echo "generate $@"
@sed -e "s/VC6/VC7/g" src/Makefile.vc6 > src/Makefile.vc7
# VC8 makefiles are for use with VS2005
vc8: lib/Makefile.vc8 src/Makefile.vc8
lib/Makefile.vc8: lib/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib bufferoverflowu.lib/g" -e "s/VC6/VC8/g" lib/Makefile.vc6 > lib/Makefile.vc8
src/Makefile.vc8: src/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib bufferoverflowu.lib/g" -e "s/VC6/VC8/g" src/Makefile.vc6 > src/Makefile.vc8
# VC9 makefiles are for use with VS2008
vc9: lib/Makefile.vc9 src/Makefile.vc9
lib/Makefile.vc9: lib/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc9/g" -e "s/VC6/VC9/g" lib/Makefile.vc6 > lib/Makefile.vc9
src/Makefile.vc9: src/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc9/g" -e "s/VC6/VC9/g" src/Makefile.vc6 > src/Makefile.vc9
# VC10 makefiles are for use with VS2010
vc10: lib/Makefile.vc10 src/Makefile.vc10
lib/Makefile.vc10: lib/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc10/g" -e "s/VC6/VC10/g" lib/Makefile.vc6 > lib/Makefile.vc10
src/Makefile.vc10: src/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc10/g" -e "s/VC6/VC10/g" src/Makefile.vc6 > src/Makefile.vc10
# VC11 makefiles are for use with VS2012
vc11: lib/Makefile.vc11 src/Makefile.vc11
lib/Makefile.vc11: lib/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc11/g" -e "s/VC6/VC11/g" lib/Makefile.vc6 > lib/Makefile.vc11
src/Makefile.vc11: src/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc11/g" -e "s/VC6/VC11/g" src/Makefile.vc6 > src/Makefile.vc11
# VC12 makefiles are for use with VS2013
vc12: lib/Makefile.vc12 src/Makefile.vc12
lib/Makefile.vc12: lib/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc12/g" -e "s/VC6/VC12/g" lib/Makefile.vc6 > lib/Makefile.vc12
src/Makefile.vc12: src/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc12/g" -e "s/VC6/VC12/g" src/Makefile.vc6 > src/Makefile.vc12
ca-bundle: lib/mk-ca-bundle.pl
@echo "generate a fresh ca-bundle.crt"
@perl $< -b -l -u lib/ca-bundle.crt

View File

@ -1,110 +1,79 @@
Curl and libcurl 7.56.0
Curl and libcurl 7.57.0
Public curl releases: 169
Public curl releases: 171
Command line options: 211
curl_easy_setopt() options: 249
Public functions in libcurl: 74
Contributors: 1618
Contributors: 1626
This release includes the following changes:
o curl: enable compression for SCP/SFTP with --compressed-ssh [11]
o libcurl: enable compression for SCP/SFTP with CURLOPT_SSH_COMPRESSION [11]
o vtls: added dynamic changing SSL backend with curl_global_sslset() [28]
o new MIME API, curl_mime_init() and friends [32]
o openssl: initial SSLKEYLOGFILE implementation [36]
o auth: add support for RFC7616 - HTTP Digest access authentication [12]
o share: add support for sharing the connection cache [31]
o HTTP: implement Brotli content encoding [28]
This release includes the following bugfixes:
o FTP: zero terminate the entry path even on bad input [67]
o examples/ftpuploadresume.c: use portable code
o runtests: match keywords case insensitively
o travis: build the examples too [1]
o strtoofft: reduce integer overflow risks globally [2]
o zsh.pl: produce a working completion script again [3]
o cmake: remove dead code for CURL_DISABLE_RTMP [4]
o progress: Track total times following redirects [5]
o configure: fix --disable-threaded-resolver [6]
o cmake: remove dead code for DISABLED_THREADSAFE [7]
o configure: fix clang version detection
o darwinssi: fix error: variable length array used
o travis: add metalink to some osx builds [8]
o configure: check for __builtin_available() availability [9]
o http_proxy: fix build error for CURL_DOES_CONVERSIONS [10]
o examples/ftpuploadresume: checksrc compliance
o ftp: fix CWD when doing multicwd then nocwd on same connection [12]
o system.h: remove all CURL_SIZEOF_* defines [13]
o http: Don't wait on CONNECT when there is no proxy [14]
o system.h: check for __ppc__ as well [15]
o http2_recv: return error better on fatal h2 errors [16]
o scripts/contri*sh: use "git log --use-mailmap"
o tftp: fix memory leak on too long filename [17]
o system.h: fix build for hppa [18]
o cmake: enable picky compiler options with clang and gcc [19]
o makefile.m32: add support for libidn2 [20]
o curl: turn off MinGW CRT's globbing [21]
o request-target.d: mention added in 7.55.0
o curl: shorten and clean up CA cert verification error message [22]
o imap: support PREAUTH [23]
o CURLOPT_USERPWD.3: see also CURLOPT_PROXYUSERPWD
o examples/threaded-ssl: mention that this is for openssl before 1.1
o winbuild: fix embedded manifest option [24]
o tests: Make sure libtests & unittests call curl_global_cleanup()
o system.h: include sys/poll.h for AIX [25]
o darwinssl: handle long strings in TLS certs [26]
o strtooff: fix build for systems with long long but no strtoll [27]
o asyn-thread: Improved cleanup after OOM situations
o HELP-US.md: "How to get started helping out in the curl project" [29]
o curl.h: CURLSSLBACKEND_WOLFSSL used wrong value [30]
o unit1301: fix error message on first test
o ossfuzz: moving towards the ideal integration [31]
o http: fix a memory leakage in checkrtspprefix()
o examples/post-callback: stop returning one byte at a time
o schannel: return CURLE_SSL_CACERT on failed verification [33]
o MAIL-ETIQUETTE: added "1.9 Your emails are public"
o http-proxy: treat all 2xx as CONNECT success [34]
o openssl: use OpenSSL's default ciphers by default [35]
o runtests.pl: support attribute "nonewline" in part verify/upload
o configure: remove --enable-soname-bump and SONAME_BUMP [37]
o travis: add c-ares enabled builds linux + osx [38]
o vtls: fix WolfSSL 3.12 build problems [39]
o http-proxy: when not doing CONNECT, that phase is done immediately [40]
o configure: fix curl_off_t check's include order [41]
o configure: use -Wno-varargs on clang 3.9[.X] debug builds
o rtsp: do not call fwrite() with NULL pointer FILE * [42]
o mbedtls: enable CA path processing [43]
o travis: add build without HTTP/SMTP/IMAP
o checksrc: verify more code style rules [44]
o HTTP proxy: on connection re-use, still use the new remote port [45]
o tests: add initial gssapi test using stub implementation [46]
o rtsp: Segfault when using WRITEDATA [47]
o docs: clarify the CURLOPT_INTERLEAVE* options behavior
o non-ascii: use iconv() with 'char **' argument [48]
o server/getpart: provide dummy function to build conversion enabled
o conversions: fix several compiler warnings
o openssl: add missing includes [49]
o schannel: Support partial send for when data is too large [50]
o socks: fix incorrect port number in SOCKS4 error message [51]
o curl: fix integer overflow in timeout options [52]
o travis: on mac, don't install openssl or libidn [53]
o cookies: reject oversized cookies instead of truncating [54]
o cookies: use lock when using CURLINFO_COOKIELIST [55]
o curl: check fseek() return code and bail on error
o examples/post-callback: use long for CURLOPT_POSTFIELDSIZE
o openssl: only verify RSA private key if supported [56]
o tests: make the imap server not verify user+password [57]
o imap: quote atoms properly when escaping characters [58]
o tests: fix a compiler warning in test 643
o file_range: avoid integer overflow when figuring out byte range [59]
o curl.h: include <sys/select.h> on cygwin too [60]
o reuse_conn: don't copy flags that are known to be equal [61]
o http: fix adding custom empty headers to repeated requests [62]
o docs: clarify the use of environment variables for proxy [63]
o docs: link CURLOPT_CONNECTTIMEOUT and CURLOPT_CONNECTTIMEOUT_MS [64]
o connect: fix race condition with happy eyeballs timeout [65]
o cookie: fix memory leak if path was set twice in header [66]
o vtls: compare and clone ssl configs properly [68]
o proxy: read the "no_proxy" variable only if necessary [69]
o curl_mime_filedata.3: fix typos [1]
o libtest: Add required test libraries for lib1552 and lib1553 [2]
o fix time diffs for systems using unsigned time_t [3]
o ftplistparser: memory leak fix: free temporary memory always [4]
o multi: allow table handle sizes to be overridden [5]
o wildcards: don't use with non-supported protocols [6]
o curl_fnmatch: return error on illegal wildcard pattern [7]
o transfer: Fix chunked-encoding upload too early exit [8]
o curl_setup: Improve detection of CURL_WINDOWS_APP [9]
o resolvers: only include anything if needed [10]
o setopt: fix CURLOPT_SSH_AUTH_TYPES option read
o appveyor: add a win32 build
o Curl_timeleft: change return type to timediff_t [11]
o cmake: Export libcurl and curl targets to use by other cmake projects [13]
o curl: in -F option arg, comma is a delimiter for files only [14]
o curl: improved ";type=" handling in -F option arguments
o timeval: use mach_absolute_time() on MacOS [15]
o curlx: the timeval functions are no longer provided as curlx_* [16]
o mkhelp.pl: do not generate comment with current date [17]
o memdebug: use send/recv signature for curl_dosend/curl_dorecv [18]
o cookie: avoid NULL dereference [19]
o url: fix CURLOPT_POSTFIELDSIZE arg value check to allow -1 [20]
o include: remove conncache.h inclusion from where its not needed
o CURLOPT_MAXREDIRS: allow -1 as a value [21]
o tests: Fixed torture tests on tests 556 and 650
o http2: Fixed OOM handling in upgrade request
o url: fix CURLOPT_DNS_CACHE_TIMEOUT arg value check to allow -1
o CURLOPT_INFILESIZE: accept -1 [22]
o curl: pass through [] in URLs instead of calling globbing error [23]
o curl: speed up handling of many URLs [24]
o ntlm: avoid malloc(0) for zero length passwords [25]
o url: remove faulty arg value check from CURLOPT_SSH_AUTH_TYPES [26]
o HTTP: support multiple Content-Encodings [27]
o travis: add a job with brotli enabled
o url: remove unncessary NULL-check
o fnmatch: remove dead code
o connect: store IPv6 connection status after valid connection [29]
o imap: deal with commands case insensitively [30]
o --interface: add support for Linux VRF [32]
o content_encoding: fix inflate_stream for no bytes available [33]
o cmake: Correctly include curl.rc in Windows builds [34]
o cmake: Add missing setmode check [35]
o connect.c: remove executable bit on file [36]
o SMB: fix uninitialized local variable
o zlib/brotli: only include header files in modules needing them [37]
o URL: return error on malformed URLs with junk after IPv6 bracket [38]
o openssl: fix too broad use of HAVE_OPAQUE_EVP_PKEY [39]
o macOS: Fix missing connectx function with Xcode version older than 9.0 [40]
o --resolve: allow IP address within [] brackets [41]
o examples/curlx: Fix code style [42]
o ntlm: remove unnecessary NULL-check to please scan-build [43]
o Curl_llist_remove: fix potential NULL pointer deref [43]
o mime: fix "Value stored to 'sz' is never read" scan-build error [43]
o openssl: fix "Value stored to 'rc' is never read" scan-build error [43]
o http2: fix "Value stored to 'hdbuf' is never read" scan-build error [43]
o http2: fix "Value stored to 'end' is never read" scan-build error [43]
o Curl_open: fix OOM return error correctly [43]
o url: reject ASCII control characters and space in host names [44]
o examples/rtsp: clear RANGE again after use [45]
o connect: improve the bind error message [46]
This release includes the following known bugs:
@ -113,89 +82,63 @@ This release includes the following known bugs:
This release would not have looked like this without help, code, reports and
advice from friends like these:
Anders Bakken, Andrei Karas, Benbuck Nason, Ben Greear, Benjamin Sergeant,
Bill Pyne, Brian Carpenter, Dan Fandrich, Daniel Stenberg, David Benjamin,
Dirk Feytons, Even Rouault, Frank Denis, Gergely Nagy, Gisle Vanem,
Ian Fette, imilli on github, Isaac Boukris, Jackarain on github,
Jakub Zakrzewski, Jan Alexander Steffens, Johannes Schindelin,
John David Anglin, joshhe on github, Kamil Dudka, Kevin Smith,
Lawrence Wagerfield, Maksim Stsepanenka, Marc Aldorasi, Marcel Raad,
Max Dymond, Michael Kaufmann, Michael Smith, Nick Zitzmann,
Nicolas Morey-Chaisemartin, Oli Kingshott, Patrick Monnerat, Pavel P,
Peter Lamare, Peter Wu, Ray Satiro, Rich Gray, Ryan Schmidt, Ryan Winograd,
SBKarr on github, Tatsuhiro Tsujikawa, Viktor Szakáts,
(47 contributors)
Alessandro Ghedini, Alex Malinovich, Alfonso Martone, Andrew Lambert,
arainchik on github, Brian Carpenter, cbartl on github, Dan Fandrich,
Daniel Bankhead, Daniel Stenberg, Dirk Feytons, Dmitri Tikhonov, Gisle Vanem,
hsiao yi, Jakub Zakrzewski, John Starks, Juro Bystricky, Luca Boccassi,
Marcel Raad, Martin Storsjö, Max Dymond, Michael Felt, Michael Kaufmann,
moohoorama on github, omau on github, Orgad Shaneh, Patrick Monnerat,
Paul Howarth, Pavel Gushchin, Pavol Markovic, Per Lundberg, Peter Piekarski,
Petr Voytsik, Ray Satiro, Rob Cotrone, Viktor Szakáts, youngchopin on github,
(37 contributors)
Thanks! (and sorry if I forgot to mention someone)
References to bug reports and discussions on issues:
[1] = https://curl.haxx.se/bug/?i=1777
[2] = https://curl.haxx.se/bug/?i=1758
[3] = https://curl.haxx.se/bug/?i=1779
[4] = https://curl.haxx.se/bug/?i=1785
[5] = https://curl.haxx.se/bug/?i=1602
[6] = https://curl.haxx.se/bug/?i=1784
[7] = https://curl.haxx.se/bug/?i=1786
[8] = https://curl.haxx.se/bug/?i=1790
[9] = https://curl.haxx.se/bug/?i=1788
[10] = https://curl.haxx.se/bug/?i=1793
[11] = https://curl.haxx.se/bug/?i=1735
[12] = https://curl.haxx.se/bug/?i=1782
[13] = https://curl.haxx.se/bug/?i=1767
[14] = https://curl.haxx.se/bug/?i=1803
[15] = https://curl.haxx.se/bug/?i=1797
[16] = https://curl.haxx.se/bug/?i=1021
[17] = https://curl.haxx.se/bug/?i=1808
[18] = https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=872502#10
[19] = https://curl.haxx.se/bug/?i=1799
[20] = https://curl.haxx.se/bug/?i=1815
[21] = https://curl.haxx.se/bug/?i=1751
[22] = https://curl.haxx.se/bug/?i=1810
[23] = https://curl.haxx.se/bug/?i=1818
[24] = https://curl.haxx.se/bug/?i=1832
[25] = https://curl.haxx.se/bug/?i=1828
[26] = https://curl.haxx.se/bug/?i=1823
[27] = https://curl.haxx.se/bug/?i=1829
[28] = https://curl.haxx.se/libcurl/c/curl_global_sslset.html
[29] = https://curl.haxx.se/bug/?i=1837
[30] = https://curl.haxx.se/mail/lib-2017-08/0120.html
[31] = https://curl.haxx.se/bug/?i=1842
[32] = https://curl.haxx.se/bug/?i=1839
[33] = https://curl.haxx.se/bug/?i=1858
[34] = https://curl.haxx.se/bug/?i=1859
[35] = https://curl.haxx.se/bug/?i=1846
[36] = https://curl.haxx.se/bug/?i=1866
[37] = https://curl.haxx.se/bug/?i=1861
[38] = https://curl.haxx.se/bug/?i=1868
[39] = https://curl.haxx.se/bug/?i=1865
[40] = https://curl.haxx.se/bug/?i=1853
[41] = https://curl.haxx.se/bug/?i=1870
[42] = https://curl.haxx.se/bug/?i=1874
[43] = https://curl.haxx.se/bug/?i=1877
[44] = https://curl.haxx.se/bug/?i=1878
[45] = https://curl.haxx.se/bug/?i=1887
[46] = https://curl.haxx.se/bug/?i=1687
[47] = https://curl.haxx.se/bug/?i=1880
[48] = https://curl.haxx.se/mail/lib-2017-09/0031.html
[49] = https://curl.haxx.se/bug/?i=1891
[50] = https://curl.haxx.se/bug/?i=1890
[51] = https://curl.haxx.se/bug/?i=1892
[52] = https://curl.haxx.se/bug/?i=1893
[53] = https://curl.haxx.se/bug/?i=1895
[54] = https://curl.haxx.se/bug/?i=1894
[55] = https://curl.haxx.se/bug/?i=1896
[56] = https://curl.haxx.se/bug/?i=1904
[57] = https://curl.haxx.se/bug/?i=1902
[58] = https://curl.haxx.se/bug/?i=1902
[59] = https://curl.haxx.se/bug/?i=1908
[60] = https://curl.haxx.se/bug/?i=1925
[61] = https://curl.haxx.se/bug/?i=1918
[62] = https://curl.haxx.se/bug/?i=1920
[63] = https://curl.haxx.se/bug/?i=1921
[64] = https://curl.haxx.se/bug/?i=1922
[65] = https://curl.haxx.se/bug/?i=1928
[66] = https://curl.haxx.se/bug/?i=1932
[67] = https://curl.haxx.se/docs/adv_20171004.html
[68] = https://curl.haxx.se/bug/?i=1917
[69] = https://curl.haxx.se/bug/?i=1919
[1] = https://curl.haxx.se/bug/?i=2008
[2] = https://curl.haxx.se/bug/?i=2006
[3] = https://curl.haxx.se/bug/?i=2004
[4] = https://curl.haxx.se/bug/?i=2013
[5] = https://curl.haxx.se/bug/?i=1982
[6] = https://curl.haxx.se/bug/?i=2016
[7] = https://curl.haxx.se/bug/?i=2015
[8] = https://curl.haxx.se/bug/?i=2001
[9] = https://curl.haxx.se/bug/?i=2025
[10] = https://curl.haxx.se/bug/?i=2023
[11] = https://curl.haxx.se/bug/?i=2021
[12] = https://curl.haxx.se/bug/?i=1934
[13] = https://curl.haxx.se/bug/?i=1879
[14] = https://curl.haxx.se/bug/?i=2022
[15] = https://curl.haxx.se/bug/?i=2033
[16] = https://curl.haxx.se/bug/?i=2034
[17] = https://curl.haxx.se/bug/?i=2026
[18] = https://curl.haxx.se/bug/?i=2031
[19] = https://curl.haxx.se/bug/?i=2032
[20] = https://curl.haxx.se/mail/lib-2017-11/0000.html
[21] = https://curl.haxx.se/bug/?i=2038
[22] = https://curl.haxx.se/bug/?i=2047
[23] = https://curl.haxx.se/bug/?i=2044
[24] = https://curl.haxx.se/bug/?i=1959
[25] = https://curl.haxx.se/bug/?i=2054
[26] = https://github.com/curl/curl/commit/f121575#commitcomment-25347120
[27] = https://curl.haxx.se/bug/?i=2002
[28] = https://curl.haxx.se/bug/?i=2045
[29] = https://curl.haxx.se/bug/?i=2053
[30] = https://curl.haxx.se/bug/?i=2061
[31] = https://curl.haxx.se/bug/?i=2043
[32] = https://curl.haxx.se/bug/?i=2024
[33] = https://curl.haxx.se/bug/?i=2060
[34] = https://curl.haxx.se/bug/?i=2064
[35] = https://curl.haxx.se/bug/?i=2067
[36] = https://curl.haxx.se/bug/?i=2071
[37] = https://curl.haxx.se/mail/lib-2017-11/0032.html
[38] = https://curl.haxx.se/bug/?i=2072
[39] = https://curl.haxx.se/bug/?i=2079
[40] = https://curl.haxx.se/bug/?i=2080
[41] = https://curl.haxx.se/bug/?i=2087
[42] = https://curl.haxx.se/bug/?i=2096
[43] = https://curl.haxx.se/bug/?i=2098
[44] = https://curl.haxx.se/bug/?i=2073
[45] = https://curl.haxx.se/bug/?i=2106
[46] = https://curl.haxx.se/bug/?i=2104

View File

@ -124,7 +124,6 @@ AC_SUBST(libext)
dnl figure out the libcurl version
CURLVERSION=`$SED -ne 's/^#define LIBCURL_VERSION "\(.*\)".*/\1/p' ${srcdir}/include/curl/curlver.h`
XC_CHECK_PROG_CC
AC_PROG_CXX
XC_AUTOMAKE
AC_MSG_CHECKING([curl version])
AC_MSG_RESULT($CURLVERSION)
@ -149,6 +148,7 @@ dnl initialize all the info variables
curl_ssl_msg="no (--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl} )"
curl_ssh_msg="no (--with-libssh2)"
curl_zlib_msg="no (--with-zlib)"
curl_brotli_msg="no (--with-brotli)"
curl_gss_msg="no (--with-gssapi)"
curl_tls_srp_msg="no (--enable-tls-srp)"
curl_res_msg="default (--enable-ares / --enable-threaded-resolver)"
@ -976,6 +976,94 @@ dnl set variable for use in automakefile(s)
AM_CONDITIONAL(HAVE_LIBZ, test x"$AMFIXLIB" = x1)
AC_SUBST(ZLIB_LIBS)
dnl **********************************************************************
dnl Check for the presence of BROTLI decoder libraries and headers
dnl **********************************************************************
dnl Brotli project home page: https://github.com/google/brotli
dnl Default to compiler & linker defaults for BROTLI files & libraries.
OPT_BROTLI=off
AC_ARG_WITH(brotli,dnl
AC_HELP_STRING([--with-brotli=PATH],[Where to look for brotli, PATH points to the BROTLI installation; when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
AC_HELP_STRING([--without-brotli], [disable BROTLI]),
OPT_BROTLI=$withval)
if test X"$OPT_BROTLI" != Xno; then
dnl backup the pre-brotli variables
CLEANLDFLAGS="$LDFLAGS"
CLEANCPPFLAGS="$CPPFLAGS"
CLEANLIBS="$LIBS"
case "$OPT_BROTLI" in
yes)
dnl --with-brotli (without path) used
CURL_CHECK_PKGCONFIG(libbrotlidec)
if test "$PKGCONFIG" != "no" ; then
LIB_BROTLI=`$PKGCONFIG --libs-only-l libbrotlidec`
LD_BROTLI=`$PKGCONFIG --libs-only-L libbrotlidec`
CPP_BROTLI=`$PKGCONFIG --cflags-only-I libbrotlidec`
version=`$PKGCONFIG --modversion libbrotlidec`
DIR_BROTLI=`echo $LD_BROTLI | $SED -e 's/-L//'`
fi
;;
off)
dnl no --with-brotli option given, just check default places
;;
*)
dnl use the given --with-brotli spot
PREFIX_BROTLI=$OPT_BROTLI
;;
esac
dnl if given with a prefix, we set -L and -I based on that
if test -n "$PREFIX_BROTLI"; then
LIB_BROTLI="-lbrotlidec"
LD_BROTLI=-L${PREFIX_BROTLI}/lib$libsuff
CPP_BROTLI=-I${PREFIX_BROTLI}/include
DIR_BROTLI=${PREFIX_BROTLI}/lib$libsuff
fi
LDFLAGS="$LDFLAGS $LD_BROTLI"
CPPFLAGS="$CPPFLAGS $CPP_BROTLI"
LIBS="$LIB_BROTLI $LIBS"
AC_CHECK_LIB(brotlidec, BrotliDecoderDecompress)
AC_CHECK_HEADERS(brotli/decode.h,
curl_brotli_msg="enabled (libbrotlidec)"
HAVE_BROTLI=1
AC_DEFINE(HAVE_BROTLI, 1, [if BROTLI is in use])
AC_SUBST(HAVE_BROTLI, [1])
)
if test X"$OPT_BROTLI" != Xoff &&
test "$HAVE_BROTLI" != "1"; then
AC_MSG_ERROR([BROTLI libs and/or directories were not found where specified!])
fi
if test "$HAVE_BROTLI" = "1"; then
if test -n "$DIR_BROTLI"; then
dnl when the brotli shared libs were found in a path that the run-time
dnl linker doesn't search through, we need to add it to LD_LIBRARY_PATH
dnl to prevent further configure tests to fail due to this
if test "x$cross_compiling" != "xyes"; then
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DIR_BROTLI"
export LD_LIBRARY_PATH
AC_MSG_NOTICE([Added $DIR_BROTLI to LD_LIBRARY_PATH])
fi
fi
else
dnl no brotli, revert back to clean variables
LDFLAGS=$CLEANLDFLAGS
CPPFLAGS=$CLEANCPPFLAGS
LIBS=$CLEANLIBS
fi
fi
dnl **********************************************************************
dnl Check for LDAP
dnl **********************************************************************
@ -1647,10 +1735,7 @@ if test -z "$ssl_backends" -o "x$OPT_SSL" != xno &&
fi
fi
if test X"$OPENSSL_ENABLED" = X"1"; then
dnl is there a pkcs12.h header present?
AC_CHECK_HEADERS(openssl/pkcs12.h)
else
if test X"$OPENSSL_ENABLED" != X"1"; then
LIBS="$CLEANLIBS"
fi
@ -3389,6 +3474,7 @@ AC_CHECK_FUNCS([geteuid \
getrlimit \
gettimeofday \
if_nametoindex \
mach_absolute_time \
pipe \
setlocale \
setmode \
@ -3789,6 +3875,9 @@ fi
if test "x$HAVE_LIBZ" = "x1"; then
SUPPORT_FEATURES="$SUPPORT_FEATURES libz"
fi
if test "x$HAVE_BROTLI" = "x1"; then
SUPPORT_FEATURES="$SUPPORT_FEATURES brotli"
fi
if test "x$USE_ARES" = "x1" -o "x$USE_THREADS_POSIX" = "x1" \
-o "x$USE_THREADS_WIN32" = "x1"; then
SUPPORT_FEATURES="$SUPPORT_FEATURES AsynchDNS"
@ -3974,7 +4063,6 @@ AC_CONFIG_FILES([Makefile \
tests/server/Makefile \
tests/libtest/Makefile \
tests/unit/Makefile \
tests/fuzz/Makefile \
packages/Makefile \
packages/Win32/Makefile \
packages/Win32/cygwin/Makefile \
@ -4007,6 +4095,7 @@ AC_MSG_NOTICE([Configured to build curl/libcurl:
SSL support: ${curl_ssl_msg}
SSH support: ${curl_ssh_msg}
zlib support: ${curl_zlib_msg}
brotli support: ${curl_brotli_msg}
GSS-API support: ${curl_gss_msg}
TLS-SRP support: ${curl_tls_srp_msg}
resolver: ${curl_res_msg}

View File

@ -1,2 +1,4 @@
*.html
*.pdf
curl.1
*.1.dist

View File

@ -63,7 +63,7 @@ BUGS
Security related bugs or bugs that are suspected to have a security impact,
should be reported by email to curl-security@haxx.se so that they first can
be dealt with away from the public to minimize the harm and impact it will
have on existing users out there who might be using the vulernable versions.
have on existing users out there who might be using the vulnerable versions.
The curl project's process for handling security related issues is
documented here:
@ -186,7 +186,7 @@ BUGS
include the version number of the curl you're using when you experience the
issue. If that version number shows us that you're using an out-of-date
curl, you should also try out a modern curl version to see if the problem
persists or how/if it has changed in apperance.
persists or how/if it has changed in appearance.
Even if you cannot immediately upgrade your application/system to run the
latest curl version, you can most often at least run a test version or
@ -290,8 +290,8 @@ BUGS
The issue and pull request trackers on https://github.com/curl/curl will
only hold "active" entries (using a non-precise definition of what active
actually is, but they're at least not completely dead). Those that are
abandonded or in other ways dormant will be closed and sometimes added to
abandoned or in other ways dormant will be closed and sometimes added to
TODO and KNOWN_BUGS instead.
This way, we only have "active" issues open on github. Irrelevant issues and
pull requests will not distract developes or casual visitors.
pull requests will not distract developers or casual visitors.

View File

@ -1418,7 +1418,7 @@ FAQ
timed out.
The most flexible way is by writing your own time-out logic and using
CURLOPT_PROGRESSFUNCTION (perhaps in combination with other callbacks) and
CURLOPT_XFERINFOFUNCTION (perhaps in combination with other callbacks) and
use that to figure out exactly when the right condition is met when the
transfer should get stopped.

View File

@ -15,11 +15,11 @@ found yourself or perhaps got annoyed at in the past. It can be a spelling
error in an error text or a weirdly phrased section in a man page. Hunt it
down and report the bug. Or make your first pull request with a fix for that.
## PR-welcome
## Help wanted
In the issue tracker we occasionally mark bugs with
[PR-welcome](https://github.com/curl/curl/labels/PR-welcome), as a sign that
the bug is acknowledged to exist and that there's nobody known to work on this
In the issue tracker we occasionally mark bugs with [help
wanted](https://github.com/curl/curl/labels/help%20wanted), as a sign that the
bug is acknowledged to exist and that there's nobody known to work on this
issue for the moment. Those are bugs that are fine to "grab" and provide a
pull request for. The complexity level of these will of course vary, so pick
one that piques your interest.

View File

@ -82,7 +82,7 @@ Dependencies
- zlib 1.1.4
- libssh2 0.16
- c-ares 1.6.0
- libidn 0.4.1
- libidn2 2.0.0
- cyassl 2.0.0
- openldap 2.0
- MIT Kerberos 1.2.4
@ -612,20 +612,6 @@ curlx
strtoll() (or equivalent) function exist on your platform. If `curl_off_t`
is only a 32 bit number on your platform, this macro uses strtol().
`curlx_tvnow()`
---------------
returns a struct timeval for the current time.
`curlx_tvdiff()`
--------------
returns the difference between two timeval structs, in number of
milliseconds.
`curlx_tvdiff_secs()`
---------------------
returns the same as `curlx_tvdiff` but with full usec resolution (as a
double)
Future
------
@ -656,29 +642,29 @@ Content Encoding
## About content encodings
[HTTP/1.1][4] specifies that a client may request that a server encode its
response. This is usually used to compress a response using one of a set of
commonly available compression techniques. These schemes are 'deflate' (the
zlib algorithm), 'gzip' and 'compress'. A client requests that the server
perform an encoding by including an Accept-Encoding header in the request
document. The value of the header should be one of the recognized tokens
'deflate', ... (there's a way to register new schemes/tokens, see sec 3.5 of
the spec). A server MAY honor the client's encoding request. When a response
is encoded, the server includes a Content-Encoding header in the
response. The value of the Content-Encoding header indicates which scheme was
used to encode the data.
response. This is usually used to compress a response using one (or more)
encodings from a set of commonly available compression techniques. These
schemes include 'deflate' (the zlib algorithm), 'gzip' 'br' (brotli) and
'compress'. A client requests that the server perform an encoding by including
an Accept-Encoding header in the request document. The value of the header
should be one of the recognized tokens 'deflate', ... (there's a way to
register new schemes/tokens, see sec 3.5 of the spec). A server MAY honor
the client's encoding request. When a response is encoded, the server
includes a Content-Encoding header in the response. The value of the
Content-Encoding header indicates which encodings were used to encode the
data, in the order in which they were applied.
A client may tell a server that it can understand several different encoding
schemes. In this case the server may choose any one of those and use it to
encode the response (indicating which one using the Content-Encoding header).
It's also possible for a client to attach priorities to different schemes so
that the server knows which it prefers. See sec 14.3 of RFC 2616 for more
information on the Accept-Encoding header.
information on the Accept-Encoding header. See sec [3.1.2.2 of RFC 7231][15]
for more information on the Content-Encoding header.
## Supported content encodings
The 'deflate' and 'gzip' content encoding are supported by libcurl. Both
regular and chunked transfers work fine. The zlib library is required for
this feature.
The 'deflate', 'gzip' and 'br' content encodings are supported by libcurl.
Both regular and chunked transfers work fine. The zlib library is required
for the 'deflate' and 'gzip' encodings, while the brotli decoding library is
for the 'br' encoding.
## The libcurl interface
@ -688,14 +674,15 @@ Content Encoding
where string is the intended value of the Accept-Encoding header.
Currently, libcurl only understands how to process responses that use the
"deflate" or "gzip" Content-Encoding, so the only values for
[`CURLOPT_ACCEPT_ENCODING`][5] that will work (besides "identity," which does
nothing) are "deflate" and "gzip" If a response is encoded using the
"compress" or methods, libcurl will return an error indicating that the
response could not be decoded. If <string> is NULL no Accept-Encoding header
is generated. If <string> is a zero-length string, then an Accept-Encoding
header containing all supported encodings will be generated.
Currently, libcurl does support multiple encodings but only
understands how to process responses that use the "deflate", "gzip" and/or
"br" content encodings, so the only values for [`CURLOPT_ACCEPT_ENCODING`][5]
that will work (besides "identity," which does nothing) are "deflate",
"gzip" and "br". If a response is encoded using the "compress" or methods,
libcurl will return an error indicating that the response could
not be decoded. If <string> is NULL no Accept-Encoding header is generated.
If <string> is a zero-length string, then an Accept-Encoding header
containing all supported encodings will be generated.
The [`CURLOPT_ACCEPT_ENCODING`][5] must be set to any non-NULL value for
content to be automatically decoded. If it is not set and the server still
@ -1091,3 +1078,4 @@ for older and later versions as things don't change drastically that often.
[12]: https://curl.haxx.se/libcurl/c/curl_multi_fdset.html
[13]: https://curl.haxx.se/libcurl/c/curl_multi_add_handle.html
[14]: https://curl.haxx.se/libcurl/c/curl_multi_info_read.html
[15]: https://tools.ietf.org/html/rfc7231#section-3.1.2.2

View File

@ -83,10 +83,13 @@ Coming dates
Based on the description above, here are some planned release dates (at the
time of this writing):
- June 14, 2017 (version 7.54.1)
- August 9, 2017
- October 4, 2017
- November 29, 2017
- January 24, 2018
- March 21, 2018
- May 16, 2018
- July 11, 2018
- September 5, 2018
- October 31, 2018
- December 26, 2018
- February 20, 2019
- April 17, 2019

View File

@ -81,3 +81,5 @@ This document lists documents and standards used by curl.
RFC 4616 - PLAIN authentication
RFC 4954 - SMTP Authentication
RFC 7932 - Brotli Compressed Data Format

View File

@ -1,20 +1,14 @@
curl the next few years - perhaps
=================================
Roadmap of things Daniel Stenberg and Steve Holme want to work on next. It is
intended to serve as a guideline for others for information, feedback and
possible participation.
Roadmap of things Daniel Stenberg wants to work on next. It is intended to
serve as a guideline for others for information, feedback and possible
participation.
QUIC
----
The standardization process of QUIC has been taken to the IETF and can be
followed on the [IETF QUIC Mailing
list](https://www.ietf.org/mailman/listinfo/quic). I'd like us to get on the
bandwagon. Ideally, this would be done with a separate library/project to
handle the binary/framing layer in a similar fashion to how HTTP/2 is
implemented. This, to allow other projects to benefit from the work and to
thus broaden the interest and chance of others to participate.
See the [QUIC wiki page](https://github.com/curl/curl/wiki/QUIC).
HTTP cookies
------------
@ -34,85 +28,15 @@ SRV records
How to find services for specific domains/hosts.
curl_formadd()
--------------
make sure there's an easy handle passed in to `curl_formadd()`,
`curl_formget()` and `curl_formfree()` by adding replacement functions and
deprecating the old ones to allow custom mallocs and more.
Or perhaps even better: revamp the formpost API completely while we're at it
and making something that is easier to use and understand:
https://github.com/curl/curl/wiki/formpost-API-redesigned
Third-party SASL
----------------
Add support for third-party SASL libraries such as Cyrus SASL.
SASL authentication in LDAP
---------------------------
...
Simplify the SMTP email
-----------------------
Simplify the SMTP email interface so that programmers don't have to
construct the body of an email that contains all the headers, alternative
content, images and attachments - maintain raw interface so that
programmers that want to do this can
email capabilities
------------------
Allow the email protocols to return the capabilities before
authenticating. This will allow an application to decide on the best
authentication mechanism
Win32 pthreads
--------------
Allow Windows threading model to be replaced by Win32 pthreads port
dynamic buffer size
-------------------
Implement a dynamic buffer size to allow SFTP to use much larger buffers and
possibly allow the size to be customizable by applications. Use less memory
when handles are not in use?
New stuff - curl
----------------
1. Embed a language interpreter (lua?). For that middle ground where curl
isnt enough and a libcurl binding feels “too much”. Build-time conditional
of course.
2. Simplify the SMTP command line so that the headers and multi-part content
don't have to be constructed before calling curl
Improve
-------
1. build for windows (considered hard by many users)
1. curl -h output (considered overwhelming to users).
2. curl -h output (considered overwhelming to users)
3. we have > 200 command line options, is there a way to redo things to
2. We have > 200 command line options, is there a way to redo things to
simplify or improve the situation as we are likely to keep adding
features/options in the future too
features/options in the future too.
4. authentication framework (consider merging HTTP and SASL authentication to
give one API for protocols to call)
5. Perform some of the clean up from the TODO document, removing old
3. Perform some of the clean up from the TODO document, removing old
definitions and such like that are currently earmarked to be removed years
ago
Remove
------
1. makefile.vc files as there is no point in maintaining two sets of Windows
makefiles. Note: These are currently being used by the Windows autobuilds
ago.

View File

@ -60,6 +60,7 @@ Alexander Sinditskiy
Alexander Traud
Alexander Zhuravlev
Alexey Borzov
Alexey Melnichuk
Alexey Pesternikov
Alexey Simak
Alexey Zakhlestin
@ -131,6 +132,7 @@ Arkadiusz Miskiewicz
Armel Asselin
Arnaud Compan
Arnaud Ebalard
Artak Galoyan
Arthur Murray
Arve Knudsen
Arvid Norberg
@ -481,6 +483,7 @@ Fabrizio Ammollo
Fahim Chandurwala
Fedor Karpelevitch
Feist Josselin
Felix Kaiser
Felix Yan
Felix von Leitner
Feng Tu
@ -664,6 +667,7 @@ Jason McDonald
Jason S. Priebe
Javier Barroso
Javier G. Sogo
Javier Sixto
Jay Austin
Jayesh A Shah
Jaz Fresh
@ -750,6 +754,7 @@ John Wanghui
John Wilkinson
John-Mark Bell
Johnny Luong
Jon DeVree
Jon Grubbs
Jon Nelson
Jon Sargeant
@ -842,6 +847,7 @@ Krishnendu Majumdar
Krister Johansen
Kristian Gunstone
Kristian Köhntopp
Kristiyan Tsaklev
Kurt Fankhauser
Kyle J. McKay
Kyle L. Huff
@ -1561,6 +1567,7 @@ William Ahern
Wojciech Zwiefka
Wouter Van Rooy
Wu Yongzheng
Wyatt O'Day
Xavier Bouchoux
Xiangbin Li
Yaakov Selkowitz
@ -1581,6 +1588,7 @@ Yves Arrouye
Yves Lejeune
Zdenek Pavlas
Zekun Ni
Zenju on github
Zmey Petroff
Zvi Har'El
afrind on github

View File

@ -48,4 +48,32 @@ s/Rodrigo Silva (MestreLion)/Rodrigo Silva/
s/tetetest tetetest//
s/Jiří Hruška/Jiri Hruska/
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/Todd Ouska$/Todd A Ouska/
s/Tim Ruehsen/Tim Rühsen/
s/Michael Koenig/Michael König/
s/moparisthebest/Travis Burtrum/
s/Jan-E/Jan Ehrhardt/
s/Paras S$/Paras Sethia/
s/Cristian Rodr\xEDguez$/Cristian Rodríguez/
s/Sidney San Mart\xEDn$/Sidney San Martín/
s/Sidney San Martin$/Sidney San Martín/
s/Taneli V\xE4h\xE4kangas$/Taneli Vähäkangas/
s/Taneli Vahakangas$/Taneli Vähäkangas/
s/Никита Дорохин./Никита Дорохин/
s/upstream tests 305//
s/ (edited)//
s/Jean-Philippe Barette-LaPierre$/Jean-Philippe Barrette-LaPierre/
s/Joern Hartroth$/Jörn Hartroth/
s/Hongli Lai (Phusion)$/Hongli Lai/
s/github user 'kreshano'$/kreshano on github/
s/Marc Hoersken$/Marc Hörsken/
s/Martin Storsjo$/Martin Storsjö/
s/Jiri Malak$/Jiří Malák/
s/JDepooter$/Joel Depooter/
s/ERAMOTO Masaya$/Eramoto Masaya/
s/shachaf on github$/Shachaf Ben-Kiki/
s/CarloCannas on github$/Carlo Cannas/
s/Henrik S. Gaßmann$/Henrik Gaßmann/
s/moteus on github/Alexey Melnichuk/

View File

@ -56,6 +56,7 @@
4.5 ASCII support
4.6 GSSAPI via Windows SSPI
4.7 STAT for LIST without data connection
4.8 Option to ignore private IP addresses in PASV response
5. HTTP
5.1 Better persistency for HTTP 1.0
@ -64,9 +65,8 @@
5.4 HTTP Digest using SHA-256
5.5 auth= in URLs
5.6 Refuse "downgrade" redirects
5.7 Brotli compression
5.8 QUIC
5.10 Leave secure cookies alone
5.7 QUIC
5.8 Leave secure cookies alone
6. TELNET
6.1 ditch stdin
@ -449,17 +449,23 @@
4.6 GSSAPI via Windows SSPI
In addition to currently supporting the SASL GSSAPI mechanism (Kerberos V5)
via third-party GSS-API libraries, such as Heimdal or MIT Kerberos, also add
support for GSSAPI authentication via Windows SSPI.
In addition to currently supporting the SASL GSSAPI mechanism (Kerberos V5)
via third-party GSS-API libraries, such as Heimdal or MIT Kerberos, also add
support for GSSAPI authentication via Windows SSPI.
4.7 STAT for LIST without data connection
Some FTP servers allow STAT for listing directories instead of using LIST, and
the response is then sent over the control connection instead of as the
otherwise usedw data connection: http://www.nsftools.com/tips/RawFTP.htm#STAT
Some FTP servers allow STAT for listing directories instead of using LIST,
and the response is then sent over the control connection instead of as the
otherwise usedw data connection: http://www.nsftools.com/tips/RawFTP.htm#STAT
This is not detailed in any FTP specification.
This is not detailed in any FTP specification.
4.8 Option to ignore private IP addresses in PASV response
Some servers respond with and some other FTP client implementations can
ignore private (RFC 1918 style) IP addresses when received in PASV responses.
To consider for libcurl as well. See https://github.com/curl/curl/issues/1455
5. HTTP
@ -514,13 +520,7 @@ This is not detailed in any FTP specification.
Consider a way to tell curl to refuse to "downgrade" protocol with a redirect
and/or possibly a bit that refuses redirect to change protocol completely.
5.7 Brotli compression
Brotli compression performs better than gzip and is being implemented by
browsers and servers widely. The algorithm: https://github.com/google/brotli
The Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=366559
5.8 QUIC
5.7 QUIC
The standardization process of QUIC has been taken to the IETF and can be
followed on the [IETF QUIC Mailing
@ -530,7 +530,7 @@ This is not detailed in any FTP specification.
implemented. This, to allow other projects to benefit from the work and to
thus broaden the interest and chance of others to participate.
5.10 Leave secure cookies alone
5.8 Leave secure cookies alone
Non-secure origins (HTTP sites) should not be allowed to set or modify
cookies with the 'secure' property:

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH curl-config 1 "February 03, 2016" "Curl 7.56.0" "curl-config manual"
.TH curl-config 1 "25 Oct 2007" "Curl 7.17.1" "curl-config manual"
.SH NAME
curl-config \- Get information about a libcurl installation
.SH SYNOPSIS

View File

@ -70,6 +70,11 @@ smtp-multi
smtp-ssl
smtp-tls
smtp-vrfy
sslbackend
url2file
usercertinmem
xmlstream
http2-download
http2-serverpush
http2-upload
imap-lsub

View File

@ -33,7 +33,8 @@ check_PROGRAMS = 10-at-a-time anyauthput cookie_interface debug fileupload \
imap-search imap-create imap-delete imap-copy imap-noop imap-ssl \
imap-tls imap-multi url2file sftpget ftpsget postinmemory http2-download \
http2-upload http2-serverpush getredirect ftpuploadfrommem \
ftpuploadresume sslbackend postit2-formadd multi-formadd
ftpuploadresume sslbackend postit2-formadd multi-formadd \
shared-connection-cache
# These examples require external dependencies that may not be commonly
# available on POSIX systems, so don't bother attempting to compile them here.

View File

@ -2,7 +2,7 @@
# pass files as argument(s)
my $docroot="http://curl.haxx.se/libcurl/c";
my $docroot="https://curl.haxx.se/libcurl/c";
for $f (@ARGV) {
open(NEW, ">$f.new");

View File

@ -537,7 +537,7 @@ int main(int argc, char **argv)
res = curl_easy_perform(p.curl));
{
int result = curl_easy_getinfo(p.curl, CURLINFO_CONTENT_TYPE, &response);
if(mimetypeaccept && p.verbose)
if(mimetypeaccept && p.verbose) {
if(!strcmp(mimetypeaccept, response))
BIO_printf(p.errorbio, "the response has a correct mimetype : %s\n",
response);
@ -545,6 +545,7 @@ int main(int argc, char **argv)
BIO_printf(p.errorbio, "the response doesn\'t have an acceptable "
"mime type, it is %s instead of %s\n",
response, mimetypeaccept);
}
}
/*** code d'erreur si accept mime ***, egalement code return HTTP != 200 ***/

View File

@ -129,6 +129,9 @@ static void rtsp_play(CURL *curl, const char *uri, const char *range)
my_curl_easy_setopt(curl, CURLOPT_RANGE, range);
my_curl_easy_setopt(curl, CURLOPT_RTSP_REQUEST, (long)CURL_RTSPREQ_PLAY);
my_curl_easy_perform(curl);
/* switch off using range again */
my_curl_easy_setopt(curl, CURLOPT_RANGE, NULL);
}

View File

@ -1,3 +1,4 @@
*.html
*.pdf
*.3.dist
libcurl-symbols.3

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH curl_easy_cleanup 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_cleanup 3 "22 aug 2007" "libcurl 7.17.0" "libcurl Manual"
.SH NAME
curl_easy_cleanup - End a libcurl easy handle
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_easy_duphandle 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_duphandle 3 "19 Sep 2014" "libcurl" "libcurl Manual"
.SH NAME
curl_easy_duphandle - Clone a libcurl session handle
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH curl_easy_escape 3 "August 12, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_escape 3 "7 April 2006" "libcurl 7.15.4" "libcurl Manual"
.SH NAME
curl_easy_escape - URL encodes the given string
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH curl_easy_getinfo 3 "June 15, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_getinfo 3 "11 Feb 2009" "libcurl 7.19.4" "libcurl Manual"
.SH NAME
curl_easy_getinfo - extract information from a curl handle
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_easy_init 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_init 3 "4 March 2002" "libcurl 7.8.1" "libcurl Manual"
.SH NAME
curl_easy_init - Start a libcurl easy session
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_easy_pause 3 "May 01, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_pause 3 "17 Dec 2007" "libcurl 7.18.0" "libcurl Manual"
.SH NAME
curl_easy_pause - pause and unpause a connection
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_easy_perform 3 "May 02, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_perform 3 "5 Mar 2001" "libcurl 7.7" "libcurl Manual"
.SH NAME
curl_easy_perform - perform a blocking file transfer
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH curl_easy_recv 3 "December 18, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_recv 3 "29 April 2008" "libcurl 7.18.2" "libcurl Manual"
.SH NAME
curl_easy_recv - receives raw data on an "easy" connection
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_easy_reset 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_reset 3 "31 July 2004" "libcurl 7.12.1" "libcurl Manual"
.SH NAME
curl_easy_reset - reset all options of a libcurl session handle
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH curl_easy_send 3 "December 18, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_send 3 "29 April 2008" "libcurl 7.18.2" "libcurl Manual"
.SH NAME
curl_easy_send - sends raw data over an "easy" connection
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH curl_easy_setopt 3 "September 02, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_setopt 3 "25 Jun 2014" "libcurl 7.38.0" "libcurl Manual"
.SH NAME
curl_easy_setopt \- set options for a curl easy handle
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_easy_strerror 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_strerror 3 "26 Apr 2004" "libcurl 7.12" "libcurl Manual"
.SH NAME
curl_easy_strerror - return string describing error code
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH curl_easy_unescape 3 "October 04, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_easy_unescape 3 "7 April 2006" "libcurl 7.15.4" "libcurl Manual"
.SH NAME
curl_easy_unescape - URL decodes the given string
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_escape 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_escape 3 "6 March 2002" "libcurl 7.9" "libcurl Manual"
.SH NAME
curl_escape - URL encodes the given string
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_formadd 3 "September 22, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_formadd 3 "24 June 2002" "libcurl 7.9.8" "libcurl Manual"
.SH NAME
curl_formadd - add a section to a multipart/formdata HTTP POST
.SH SYNOPSIS
@ -173,7 +172,10 @@ you've called \fIcurl_easy_cleanup(3)\fP for the curl handle.
See example below.
.SH AVAILABILITY
Deprecated in 7.56.0. Before this release, field names were allowed to
contain zero-valued bytes.
contain zero-valued bytes. The pseudo-filename "-" to read stdin is
discouraged although still supported, but data is not read before being
actually sent: the effective data size can then not be automatically
determined, resulting in a chunked encoding transfer.
.SH RETURN VALUE
0 means everything was ok, non-zero means an error occurred corresponding
to a CURL_FORMADD_* constant defined in

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_formfree 3 "September 02, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_formfree 3 "6 April 2001" "libcurl 7.7.1" "libcurl Manual"
.SH NAME
curl_formfree - free a previously build multipart/formdata HTTP POST chain
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_formget 3 "September 02, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_formget 3 "20 June 2006" "libcurl 7.15.5" "libcurl Manual"
.SH NAME
curl_formget - serialize a previously built multipart/formdata HTTP POST chain
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_free 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_free 3 "12 Aug 2003" "libcurl 7.10" "libcurl Manual"
.SH NAME
curl_free - reclaim memory that has been obtained through a libcurl call
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_getdate 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_getdate 3 "12 Aug 2005" "libcurl 7.0" "libcurl Manual"
.SH NAME
curl_getdate - Convert a date string to number of seconds
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_getenv 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_getenv 3 "30 April 2004" "libcurl 7.12" "libcurl Manual"
.SH NAME
curl_getenv - return value for environment name
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_global_cleanup 3 "September 20, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_global_cleanup 3 "17 Feb 2006" "libcurl 7.8" "libcurl Manual"
.SH NAME
curl_global_cleanup - global libcurl cleanup
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_global_init 3 "August 28, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_global_init 3 "11 May 2004" "libcurl 7.12" "libcurl Manual"
.SH NAME
curl_global_init - Global libcurl initialisation
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_global_init_mem 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_global_init_mem 3 "10 May 2004" "libcurl 7.12.0" "libcurl Manual"
.SH NAME
curl_global_init_mem - Global libcurl initialisation with memory callbacks
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_printf 3 "April 01, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_printf 3 "30 April 2004" "libcurl 7.12" "libcurl Manual"
.SH NAME
curl_maprintf, curl_mfprintf, curl_mprintf, curl_msnprintf, curl_msprintf
curl_mvaprintf, curl_mvfprintf, curl_mvprintf, curl_mvsnprintf,

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_add_handle 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_add_handle 3 "4 March 2002" "libcurl 7.9.5" "libcurl Manual"
.SH NAME
curl_multi_add_handle - add an easy handle to a multi session
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_assign 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_assign 3 "9 Jul 2006" "libcurl 7.16.0" "libcurl Manual"
.SH NAME
curl_multi_assign \- set data to associate with an internal socket
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_cleanup 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_cleanup 3 "1 March 2002" "libcurl 7.9.5" "libcurl Manual"
.SH NAME
curl_multi_cleanup - close down a multi session
.SH SYNOPSIS

View File

@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
.\" * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
.\" * Copyright (C) 1998 - 2017, 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
@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_fdset 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_fdset 3 "2 Jan 2006" "libcurl 7.16.0" "libcurl Manual"
.SH NAME
curl_multi_fdset - extracts file descriptor information from a multi handle
.SH SYNOPSIS
@ -59,9 +58,10 @@ libcurl set. When libcurl returns -1 in \fImax_fd\fP, it is because libcurl
currently does something that isn't possible for your application to monitor
with a socket and unfortunately you can then not know exactly when the current
action is completed using select(). You then need to wait a while before you
proceed and call \fIcurl_multi_perform(3)\fP anyway. How long to wait? We
suggest 100 milliseconds at least, but you may want to test it out in your own
particular conditions to find a suitable value.
proceed and call \fIcurl_multi_perform(3)\fP anyway. How long to wait? Unless
\fIcurl_multi_timeout(3)\fP gives you a lower number, we suggest 100
milliseconds or so, but you may want to test it out in your own particular
conditions to find a suitable value.
When doing select(), you should use \fIcurl_multi_timeout(3)\fP to figure out
how long to wait for action. Call \fIcurl_multi_perform(3)\fP even if no

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_info_read 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_info_read 3 "18 Dec 2004" "libcurl 7.10.3" "libcurl Manual"
.SH NAME
curl_multi_info_read - read multi stack informationals
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_init 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_init 3 "1 March 2002" "libcurl 7.9.5" "libcurl Manual"
.SH NAME
curl_multi_init - create a multi handle
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_perform 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_perform 3 "1 March 2002" "libcurl 7.9.5" "libcurl Manual"
.SH NAME
curl_multi_perform - reads/writes available data from each easy handle
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_remove_handle 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_remove_handle 3 "6 March 2002" "libcurl 7.9.5" "libcurl Manual"
.SH NAME
curl_multi_remove_handle - remove an easy handle from a multi session
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_setopt 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_setopt 3 "4 Nov 2014" "libcurl 7.39.0" "libcurl Manual"
.SH NAME
curl_multi_setopt \- set options for a curl multi handle
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_socket 3 "December 15, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_socket 3 "9 Jul 2006" "libcurl 7.16.0" "libcurl Manual"
.SH NAME
curl_multi_socket \- reads/writes available data
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_socket_action 3 "June 07, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_socket_action 3 "9 Jul 2006" "libcurl 7.16.0" "libcurl Manual"
.SH NAME
curl_multi_socket_action \- reads/writes available data given an action
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_strerror 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_strerror 3 "26 Apr 2004" "libcurl 7.12" "libcurl Manual"
.SH NAME
curl_multi_strerror - return string describing error code
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_timeout 3 "May 02, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_timeout 3 "2 Jan 2006" "libcurl 7.16.0" "libcurl Manual"
.SH NAME
curl_multi_timeout \- how long to wait for action before proceeding
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_multi_wait 3 "March 09, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_multi_wait 3 "12 Jul 2012" "libcurl 7.28.0" "libcurl Manual"
.SH NAME
curl_multi_wait - polls on all easy handles in a multi handle
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_share_cleanup 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_share_cleanup 3 "8 Aug 2003" "libcurl 7.10.7" "libcurl Manual"
.SH NAME
curl_share_cleanup - Clean up a shared object
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_share_init 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_share_init 3 "8 Aug 2003" "libcurl 7.10.7" "libcurl Manual"
.SH NAME
curl_share_init - Create a shared object
.SH SYNOPSIS

View File

@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
.\" * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
.\" * Copyright (C) 1998 - 2017, 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
@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_share_setopt 3 "May 29, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_share_setopt 3 "8 Aug 2003" "libcurl 7.10.7" "libcurl Manual"
.SH NAME
curl_share_setopt - Set options for a shared object
.SH SYNOPSIS
@ -71,6 +70,13 @@ object. This will reduce the time spent in the SSL handshake when reconnecting
to the same server. Note SSL session IDs are reused within the same easy handle
by default. Note this symbol was added in 7.10.3 but was not implemented until
7.23.0.
.IP CURL_LOCK_DATA_CONNECT
Put the connection cache in the share object and make all easy handles using
this share object share the connection cache. Using this, you can for example
do multi-threaded libcurl use with one handle in each thread, and yet have a
shared pool of unused connections and this way get way better connection
re-use than if you use one separate pool in each thread. Support for this was
added in 7.57.0, but the symbol existed long before this.
.RE
.IP CURLSHOPT_UNSHARE
This option does the opposite of \fICURLSHOPT_SHARE\fP. It specifies that

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_share_strerror 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_share_strerror 3 "26 Apr 2004" "libcurl 7.12" "libcurl Manual"
.SH NAME
curl_share_strerror - return string describing error code
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_slist_append 3 "May 05, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_slist_append 3 "19 Jun 2003" "libcurl 7.10.4" "libcurl Manual"
.SH NAME
curl_slist_append - add a string to an slist
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_slist_free_all 3 "May 05, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_slist_free_all 3 "5 March 2001" "libcurl 7.0" "libcurl Manual"
.SH NAME
curl_slist_free_all - free an entire curl_slist list
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_strequal 3 "June 29, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_strequal 3 "30 April 2004" "libcurl 7.12" "libcurl Manual"
.SH NAME
curl_strequal, curl_strnequal - case insensitive string comparisons
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_unescape 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_unescape 3 "22 March 2001" "libcurl 7.7" "libcurl Manual"
.SH NAME
curl_unescape - URL decodes the given string
.SH SYNOPSIS

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH curl_version 3 "February 03, 2016" "libcurl 7.56.0" "libcurl Manual"
.TH curl_version 3 "5 March 2001" "libcurl 7.0" "libcurl Manual"
.SH NAME
curl_version - returns the libcurl version string
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH curl_version_info 3 "August 18, 2017" "libcurl 7.56.0" "libcurl Manual"
.TH curl_version_info 3 "2 Nov 2014" "libcurl 7.40.0" "libcurl Manual"
.SH NAME
curl_version_info - returns run-time libcurl version info
.SH SYNOPSIS
@ -73,6 +72,12 @@ typedef struct {
const char *libssh_version; /* human readable string */
/* when 'age' is 4 or higher (7.57.0 or later), the members below also
exist */
unsigned int brotli_ver_num; /* Numeric Brotli version
(MAJOR << 24) | (MINOR << 12) | PATCH */
const char *brotli_version; /* human readable string. */
} curl_version_info_data;
.fi
@ -161,6 +166,8 @@ libcurl was built with support for HTTPS-proxy.
libcurl was built with multiple SSL backends. For details, see
\fIcurl_global_sslset(3)\fP.
(Added in 7.56.0)
.IP CURL_VERSION_BROTLI
supports HTTP Brotli content encoding using libbrotlidec (Added in 7.57.0)
.RE
\fIssl_version\fP is an ASCII string for the OpenSSL version used. If libcurl
has no SSL support, this is NULL.

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH libcurl 3 "February 03, 2016" "libcurl 7.56.0" "libcurl easy interface"
.TH libcurl 3 "19 Sep 2014" "libcurl" "libcurl easy interface"
.SH NAME
libcurl-easy \- easy interface overview
.SH DESCRIPTION

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH libcurl-errors 3 "August 22, 2016" "libcurl 7.56.0" "libcurl errors"
.TH libcurl-errors 3 "1 Jan 2010" "libcurl 7.20.0" "libcurl errors"
.SH NAME
libcurl-errors \- error codes in libcurl
.SH DESCRIPTION

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH libcurl-multi 3 "June 07, 2017" "libcurl 7.56.0" "libcurl multi interface"
.TH libcurl-multi 3 "19 Sep 2014" "libcurl" "libcurl multi interface"
.SH NAME
libcurl-multi \- how to use the multi interface
.SH DESCRIPTION

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH libcurl-share 3 "February 03, 2016" "libcurl 7.56.0" "libcurl share interface"
.TH libcurl-share 3 "8 Aug 2003" "libcurl 7.10.7" "libcurl share interface"
.SH NAME
libcurl-share \- how to use the share interface
.SH DESCRIPTION

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH libcurl-tutorial 3 "October 03, 2017" "libcurl 7.56.0" "libcurl programming"
.TH libcurl-tutorial 3 "19 Sep 2014" "libcurl" "libcurl programming"
.SH NAME
libcurl-tutorial \- libcurl programming tutorial
.SH "Objective"
@ -1223,7 +1222,7 @@ alternative and a file attachment encoded in base64:
.nf
curl_mime *message = curl_mime_init(easyhandle);
/* The inline part is an alterative proposing the html and the text
/* The inline part is an alternative proposing the html and the text
versions of the e-mail. */
curl_mime *alt = curl_mime_init(easyhandle);

View File

@ -19,8 +19,7 @@
.\" * KIND, either express or implied.
.\" *
.\" **************************************************************************
.TH libcurl 3 "July 15, 2017" "libcurl 7.56.0" "libcurl overview"
.TH libcurl 3 "19 March 2002" "libcurl 7.9.6" "libcurl overview"
.SH NAME
libcurl \- client-side URL transfers
.SH DESCRIPTION

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE 3 "May 27, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE \- chunk length threshold for pipelining
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE 3 "May 27, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE \- size threshold for pipelining penalty
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_MAXCONNECTS 3 "May 27, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_MAXCONNECTS 3 "17 Jun 2014" "libcurl 7.37.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_MAXCONNECTS \- set size of connection cache
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_MAX_HOST_CONNECTIONS 3 "May 27, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_MAX_HOST_CONNECTIONS 3 "17 Jun 2014" "libcurl 7.37.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_MAX_HOST_CONNECTIONS \- set max number of connections to a single host
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_MAX_PIPELINE_LENGTH 3 "May 27, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_MAX_PIPELINE_LENGTH 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_MAX_PIPELINE_LENGTH \- maximum number of requests in a pipeline
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_MAX_TOTAL_CONNECTIONS 3 "May 27, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_MAX_TOTAL_CONNECTIONS 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_MAX_TOTAL_CONNECTIONS \- max simultaneously open connections
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_PIPELINING 3 "May 27, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_PIPELINING 3 "17 Jun 2014" "libcurl 7.37.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_PIPELINING \- enable HTTP pipelining and multiplexing
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_PIPELINING_SERVER_BL 3 "February 03, 2016" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_PIPELINING_SERVER_BL 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_PIPELINING_SERVER_BL \- pipelining server blacklist
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_PIPELINING_SITE_BL 3 "February 03, 2016" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_PIPELINING_SITE_BL 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_PIPELINING_SITE_BL \- pipelining host blacklist
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_SOCKETDATA 3 "May 31, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_SOCKETDATA 3 "3 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_SOCKETDATA \- custom pointer passed to the socket callback
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_SOCKETFUNCTION 3 "May 31, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_SOCKETFUNCTION 3 "3 Nov 2016" "libcurl 7.39.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_SOCKETFUNCTION \- callback informed about what to wait for
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_TIMERDATA 3 "May 27, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_TIMERDATA 3 "17 Jun 2014" "libcurl 7.37.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_TIMERDATA \- custom pointer to pass to timer callback
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLMOPT_TIMERFUNCTION 3 "May 27, 2017" "libcurl 7.56.0" "curl_multi_setopt options"
.TH CURLMOPT_TIMERFUNCTION 3 "17 Jun 2014" "libcurl 7.37.0" "curl_multi_setopt options"
.SH NAME
CURLMOPT_TIMERFUNCTION \- set callback to receive timeout values
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLOPT_ACCEPTTIMEOUT_MS 3 "March 06, 2016" "libcurl 7.56.0" "curl_easy_setopt options"
.TH CURLOPT_ACCEPTTIMEOUT_MS 3 "19 Jun 2014" "libcurl 7.37.0" "curl_easy_setopt options"
.SH NAME
CURLOPT_ACCEPTTIMEOUT_MS \- timeout waiting for FTP server to connect back
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLOPT_ACCEPT_ENCODING 3 "December 21, 2016" "libcurl 7.56.0" "curl_easy_setopt options"
.TH CURLOPT_ACCEPT_ENCODING 3 "17 Jun 2014" "libcurl 7.37.0" "curl_easy_setopt options"
.SH NAME
CURLOPT_ACCEPT_ENCODING \- enables automatic decompression of HTTP downloads
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLOPT_ADDRESS_SCOPE 3 "May 31, 2017" "libcurl 7.56.0" "curl_easy_setopt options"
.TH CURLOPT_ADDRESS_SCOPE 3 "19 Jun 2014" "libcurl 7.37.0" "curl_easy_setopt options"
.SH NAME
CURLOPT_ADDRESS_SCOPE \- set scope for local IPv6 addresses
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLOPT_APPEND 3 "March 06, 2016" "libcurl 7.56.0" "curl_easy_setopt options"
.TH CURLOPT_APPEND 3 "17 Jun 2014" "libcurl 7.37.0" "curl_easy_setopt options"
.SH NAME
CURLOPT_APPEND \- enable appending to the remote file
.SH SYNOPSIS

View File

@ -20,8 +20,7 @@
.\" *
.\" **************************************************************************
.\"
.TH CURLOPT_AUTOREFERER 3 "May 05, 2017" "libcurl 7.56.0" "curl_easy_setopt options"
.TH CURLOPT_AUTOREFERER 3 "17 Jun 2014" "libcurl 7.37.0" "curl_easy_setopt options"
.SH NAME
CURLOPT_AUTOREFERER \- automatically update the referer header
.SH SYNOPSIS

Some files were not shown because too many files have changed in this diff Show More