Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Thursday, June 13, 2019
 
 

CURLOPT_DEFAULT_PROTOCOL (3)

Name

CURLOPT_DEFAULT_PROTOCOL - ing a scheme name

Synopsis

#include <curl/curl.h>

CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DEFAULT_PROTOCOL,  char
*protocol);

Description

curl_easy_setopt options                           CURLOPT_DEFAULT_PROTOCOL(3)



NAME
       CURLOPT_DEFAULT_PROTOCOL  - default protocol to use if the URL is miss-
       ing a scheme name

SYNOPSIS
       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DEFAULT_PROTOCOL,  char
       *protocol);

DESCRIPTION
       This  option  tells  libcurl  to  use  protocol if the URL is missing a
       scheme name.

       Use one of these protocol (scheme) names:

       dict, file, ftp, ftps, gopher, http, https, imap, imaps,  ldap,  ldaps,
       pop3, pop3s, rtsp, scp, sftp, smb, smbs, smtp, smtps, telnet, tftp

       An  unknown or unsupported protocol causes error CURLE_UNSUPPORTED_PRO-
       TOCOL when libcurl  parses  a  schemeless  URL.  Parsing  happens  when
       curl_easy_perform(3)  or curl_multi_perform(3) is called. The protocols
       supported by libcurl will vary depending  on  how  it  was  built.  Use
       curl_version_info(3)  if you need a list of protocol names supported by
       the build of libcurl that you are using.

       This option does not change the default proxy protocol (http).

       Without this option libcurl would make a guess based on the  host,  see
       CURLOPT_URL(3) for details.

       The  application  does not have to keep the string around after setting
       this option.

DEFAULT
       NULL (make a guess based on the host)

PROTOCOLS
       All

EXAMPLE
       curl = curl_easy_init();
       if(curl) {
         /* set a URL without a scheme */
         curl_easy_setopt(curl, CURLOPT_URL, "example.com");

         /* set the default protocol (scheme) for schemeless URLs */
         curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");

         /* Perform the request */
         curl_easy_perform(curl);
       }

AVAILABILITY
       Added in 7.45.0

RETURN VALUE
       CURLE_OK if the option is supported.

       CURLE_OUT_OF_MEMORY if there was insufficient heap space.

       CURLE_UNKNOWN_OPTION if the option is not supported.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | web/curl         |
       +---------------+------------------+
       |Stability      | Uncommitted      |
       +---------------+------------------+
SEE ALSO
       CURLOPT_URL(3),



NOTES
       This    software    was    built    from    source     available     at
       https://github.com/oracle/solaris-userland.    The  original  community
       source   was    downloaded    from     https://github.com/curl/curl/ar-
       chive/curl-7_64_0.zip

       Further information about this software can be found on the open source
       community website at http://curl.haxx.se/.



libcurl 7.45.0                    18 Aug 2015
                                                   CURLOPT_DEFAULT_PROTOCOL(3)