manpagez: man pages & more
man curl_global_sslset(3)
Home | html | info | man
curl_global_sslset(3)           libcurl Manual           curl_global_sslset(3)




NAME

       curl_global_sslset - Select SSL backend to use with libcurl


SYNOPSIS

       #include <curl/curl.h>

       typedef struct {
         curl_sslbackend id;
         const char *name;
       } curl_ssl_backend;

       typedef enum {
         CURLSSLBACKEND_NONE = 0,
         CURLSSLBACKEND_OPENSSL = 1,
         CURLSSLBACKEND_GNUTLS = 2,
         CURLSSLBACKEND_NSS = 3,
         CURLSSLBACKEND_GSKIT = 5,
         CURLSSLBACKEND_POLARSSL = 6,
         CURLSSLBACKEND_WOLFSSL = 7,
         CURLSSLBACKEND_SCHANNEL = 8,
         CURLSSLBACKEND_DARWINSSL = 9,
         CURLSSLBACKEND_AXTLS = 10,
         CURLSSLBACKEND_MBEDTLS = 11
       } curl_sslbackend;

       curl_global_sslset(3)  id,
                                     const char * name,
                                     curl_ssl_backend *** avail );


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 before curl_global_init(3).

       The  backend can be identified by the id (e.g. CURLSSLBACKEND_OPENSSL).
       The backend can also be specified via the name  parameter  for  a  case
       insensitive  match  (passing  -1 as id). If both id and name are speci-
       fied, the name will be ignored.

       If neither id nor name are  specified,  the  function  will  fail  with
       CURLSSLSET_UNKNOWN_BACKEND and set the avail pointer to the NULL-termi-
       nated 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 avail pointer to a  NULL-termi-
       nated  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 CURLSSLSET_TOO_LATE.

       This  function  is not thread safe. You must not call it when any other
       thread in the program (i.e. a thread sharing the same memory)  is  run-
       ning.  This doesn't just mean no other thread that is using libcurl.



AVAILABILITY

       This  function  was added in libcurl 7.56.0. Before this version, there
       was no support for choosing SSL backends at runtime.


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
       curl_global_init(3) has  already  been  called,  the  function  returns
       CURLSSLSET_TOO_LATE.

       If this libcurl was built completely without SSL support, with no back-
       ends at all, this function returns CURLSSLSET_NO_BACKENDS.


SEE ALSO

       curl_global_init(3), libcurl(3)



libcurl 7.56.0                September 21, 2017         curl_global_sslset(3)

curl 7.56.0 - Generated Thu Oct 5 20:10:17 CDT 2017
© manpagez.com 2000-2018
Individual documents may contain additional copyright information.