quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

CURLOPT_SSL_ENABLE_ALPN.md (1248B)


      1 ---
      2 c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
      3 SPDX-License-Identifier: curl
      4 Title: CURLOPT_SSL_ENABLE_ALPN
      5 Section: 3
      6 Source: libcurl
      7 See-also:
      8   - CURLOPT_SSL_ENABLE_NPN (3)
      9   - CURLOPT_SSL_OPTIONS (3)
     10 Protocol:
     11   - TLS
     12 TLS-backend:
     13   - All
     14 Added-in: 7.36.0
     15 ---
     16 
     17 # NAME
     18 
     19 CURLOPT_SSL_ENABLE_ALPN - Application Layer Protocol Negotiation
     20 
     21 # SYNOPSIS
     22 
     23 ~~~c
     24 #include <curl/curl.h>
     25 
     26 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_ENABLE_ALPN, long npn);
     27 ~~~
     28 
     29 # DESCRIPTION
     30 
     31 Pass a long as parameter, 0 or 1 where 1 is for enable and 0 for disable. This
     32 option enables/disables ALPN in the SSL handshake (if the SSL backend libcurl
     33 is built to use supports it), which can be used to negotiate http2.
     34 
     35 # DEFAULT
     36 
     37 1, enabled
     38 
     39 # %PROTOCOLS%
     40 
     41 # EXAMPLE
     42 
     43 ~~~c
     44 int main(void)
     45 {
     46   CURL *curl = curl_easy_init();
     47   if(curl) {
     48     CURLcode res;
     49     curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
     50     curl_easy_setopt(curl, CURLOPT_SSL_ENABLE_ALPN, 0L);
     51     res = curl_easy_perform(curl);
     52     curl_easy_cleanup(curl);
     53   }
     54 }
     55 ~~~
     56 
     57 # %AVAILABILITY%
     58 
     59 # RETURN VALUE
     60 
     61 curl_easy_setopt(3) returns a CURLcode indicating success or error.
     62 
     63 CURLE_OK (0) means everything was OK, non-zero means an error occurred, see
     64 libcurl-errors(3).