curl/docs
Johannes Schindelin 1328f69d53
vtls: introduce curl_global_sslset()
Let's add a compile time safe API to select an SSL backend. This
function needs to be called *before* curl_global_init(), and can be
called only once.

Side note: we do not explicitly test that it is called before
curl_global_init(), but we do verify that it is not called multiple times
(even implicitly).

If SSL is used before the function was called, it will use whatever the
CURL_SSL_BACKEND environment variable says (or default to the first
available SSL backend), and if a subsequent call to
curl_global_sslset() disagrees with the previous choice, it will fail
with CURLSSLSET_TOO_LATE.

The function also accepts an "avail" parameter to point to a (read-only)
NULL-terminated list of available backends. This comes in real handy if
an application wants to let the user choose between whatever SSL backends
the currently available libcurl has to offer: simply call

	curl_global_sslset(-1, NULL, &avail);

which will return CURLSSLSET_UNKNOWN_BACKEND and populate the avail
variable to point to the relevant information to present to the user.

Just like with the HTTP/2 push functions, we have to add the function
declaration of curl_global_sslset() function to the header file
*multi.h* because VMS and OS/400 require a stable order of functions
declared in include/curl/*.h (where the header files are sorted
alphabetically). This looks a bit funny, but it cannot be helped.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2017-08-28 14:56:59 +02:00
..
cmdline-opts request-target.d: mention added in 7.55.0 2017-08-22 14:48:33 +02:00
examples examples/threaded-ssl: mention that this is for openssl before 1.1 2017-08-25 08:15:59 +02:00
libcurl vtls: introduce curl_global_sslset() 2017-08-28 14:56:59 +02:00
.gitignore gitignore: Ignore man page dist files 2017-03-07 23:27:31 +01:00
BINDINGS.md docs/comments: Update to secure URL versions 2017-08-08 21:41:07 +02:00
BUGS BUGS: improved phrasing about security bugs 2017-08-01 15:06:08 +02:00
CHECKSRC.md
CIPHERS.md docs/comments: Update to secure URL versions 2017-08-08 21:41:07 +02:00
CMakeLists.txt cmake: add support for building HTML and PDF docs 2017-03-21 14:49:53 +01:00
CODE_OF_CONDUCT.md
CODE_STYLE.md
CONTRIBUTE.md CONTRIBUTE.md: mention the out-of-tree build test too 2017-06-22 10:31:03 +02:00
curl-config.1
FAQ docs/comments: Update to secure URL versions 2017-08-08 21:41:07 +02:00
FEATURES LDAP: documentation update per #878 changes (#1506) 2017-05-24 01:03:29 +03:00
HISTORY.md
HTTP2.md
HTTP-COOKIES.md
INSTALL
INSTALL.cmake includes: remove curl/curlbuild.h and curl/curlrules.h 2017-06-14 11:07:33 +02:00
INSTALL.md docs/comments: Update to secure URL versions 2017-08-08 21:41:07 +02:00
INTERNALS.md docs/comments: Update to secure URL versions 2017-08-08 21:41:07 +02:00
KNOWN_BUGS KNOWN_BUGS: HTTP test server 'connection-monitor' problems 2017-08-18 16:04:55 +02:00
LICENSE-MIXING.md
MAIL-ETIQUETTE
Makefile.am make: build the docs subdir only from within src 2017-06-30 17:09:01 +02:00
MANUAL docs: clarify NO_PROXY further 2017-05-30 22:43:34 +02:00
mk-ca-bundle.1 docs/comments: Update to secure URL versions 2017-08-08 21:41:07 +02:00
README.cmake
README.md
README.netware
README.win32
RELEASE-PROCEDURE RELEASE-PROCEDURE: updated future release dates 2017-06-09 15:58:51 +02:00
RESOURCES
ROADMAP.md
SECURITY.md
SSL-PROBLEMS.md
SSLCERTS.md SSLCERTS.md: mention HTTPS proxies and their separate options 2017-03-16 23:00:24 +01:00
THANKS RELEASE-NOTES/THANKS: curl 7.55.1 release time 2017-08-13 23:34:21 +02:00
THANKS-filter THANKS: 20 new contributors in 7.55.0 2017-08-09 07:50:35 +02:00
TheArtOfHttpScripting
TODO TODO: 1.10 auto-detect proxy 2017-07-05 10:07:56 +02:00
VERSIONS

curl logo

Documentation

You'll find a mix of various documentation in this directory and subdirectories, using several different formats. Some of them are not ideal for reading directly in your browser.

If you'd rather see the rendered version of the documentation, check out the curl web site's documentation section for general curl stuff or the libcurl section for libcurl related documentation.