mirror of
https://github.com/curl/curl.git
synced 2024-11-27 05:50:21 +08:00
860443bee4
it is a one time *set*, not necessarily a one time use... it can be called again if the first call failed or just listed the alternatives. clarify that the available backends are the ones this build supports plus add some formatting Reported-by: Rich Gray Bug: https://curl.haxx.se/mail/lib-2017-08/0119.html
74 lines
3.3 KiB
Groff
74 lines
3.3 KiB
Groff
.\" **************************************************************************
|
|
.\" * _ _ ____ _
|
|
.\" * Project ___| | | | _ \| |
|
|
.\" * / __| | | | |_) | |
|
|
.\" * | (__| |_| | _ <| |___
|
|
.\" * \___|\___/|_| \_\_____|
|
|
.\" *
|
|
.\" * 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 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
|
|
.\" * furnished to do so, under the terms of the COPYING file.
|
|
.\" *
|
|
.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
.\" * KIND, either express or implied.
|
|
.\" *
|
|
.\" **************************************************************************
|
|
.TH curl_global_sslset 3 "15 July 2017" "libcurl 7.56" "libcurl Manual"
|
|
.SH NAME
|
|
curl_global_sslset - Select SSL backend to use with libcurl
|
|
.SH SYNOPSIS
|
|
.B #include <curl/curl.h>
|
|
.sp
|
|
.BI "CURLsslset curl_global_sslset(curl_sslbackend " id ", const char *" name
|
|
.BI ", curl_ssl_backend ***" avail ");"
|
|
.ad
|
|
.SH DESCRIPTION
|
|
This function configures at runtime which SSL backend to use with
|
|
libcurl. This function can only be used to select an SSL backend once, and it
|
|
must be called \fBbefore\fP \fIcurl_global_init(3)\fP.
|
|
|
|
The backend can be identified by the \fIid\fP
|
|
(e.g. \fBCURLSSLBACKEND_OPENSSL\fP). The backend can also be specified via the
|
|
\fIname\fP parameter (passing -1 as \fIid\fP). If both \fIid\fP and \fIname\fP
|
|
are specified, the \fIname\fP will be ignored.
|
|
|
|
If neither \fIid\fP nor \fPname\fP are specified, the function will fail with
|
|
CURLSSLSET_UNKNOWN_BACKEND and set the \fIavail\fP pointer to the
|
|
NULL-terminated list of available backends. The available backends are those
|
|
that this particular build of libcurl supports.
|
|
|
|
Upon success, the function returns CURLSSLSET_OK.
|
|
|
|
If the specified SSL backend is not available, the function returns
|
|
CURLSSLSET_UNKNOWN_BACKEND and sets the \fIavail\fP pointer to a
|
|
NULL-terminated list of available SSL backends. In this case, you may call the
|
|
function again to try to select a different backend.
|
|
|
|
The SSL backend can be set only once. If it has already been set, a subsequent
|
|
attempt to change it will result in a \fBCURLSSLSET_TOO_LATE\fP.
|
|
|
|
\fBThis function is not thread safe.\fP You must not call it when any other
|
|
thread in the program (i.e. a thread sharing the same memory) is running.
|
|
This doesn't just mean no other thread that is using libcurl.
|
|
|
|
.SH AVAILABILITY
|
|
This function was added in libcurl 7.56.0. Before this version, there was no
|
|
support for choosing SSL backends at runtime.
|
|
.SH RETURN VALUE
|
|
If this function returns CURLSSLSET_OK, the backend was successfully selected.
|
|
|
|
If the chosen backend is unknown (or support for the chosed backend has not
|
|
been compiled into libcurl), the function returns CURLSSLSET_UNKNOWN_BACKEND.
|
|
|
|
If the backend had been configured previously, or if \fIcurl_global_init(3)\fP
|
|
has already been called, the function returns CURLSSLSET_TOO_LATE.
|
|
.SH "SEE ALSO"
|
|
.BR curl_global_init "(3), "
|
|
.BR libcurl "(3) "
|