Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

CURLOPT_NETRC (3)

Name

CURLOPT_NETRC - enable use of .netrc

Synopsis

#include <curl/curl.h>

CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NETRC, long level);

Description

CURLOPT_NETRC(3)           curl_easy_setopt options           CURLOPT_NETRC(3)



NAME
       CURLOPT_NETRC - enable use of .netrc

SYNOPSIS
       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NETRC, long level);

DESCRIPTION
       This  parameter  controls the preference level of libcurl between using
       user names and passwords from your  ~/.netrc  file,  relative  to  user
       names  and  passwords  in the URL supplied with CURLOPT_URL(3). On Win-
       dows, libcurl will use the file as %HOME%/_netrc, but you can also tell
       libcurl a different file name to use with CURLOPT_NETRC_FILE(3).

       libcurl  uses  a user name (and supplied or prompted password) supplied
       with CURLOPT_USERPWD(3) or CURLOPT_USERNAME(3) in preference to any  of
       the options controlled by this parameter.

       Only  machine name, user name and password are taken into account (init
       macros and similar things are not supported).

       libcurl does not verify that the file has the  correct  properties  set
       (as  the  standard Unix ftp client does). It should only be readable by
       user.

       level is a long that should be set  to  one  of  the  values  described
       below.

       CURL_NETRC_IGNORED (0)
              The library will ignore the .netrc file. This is the default.

       CURL_NETRC_OPTIONAL (1)
              The  use  of the .netrc file is optional, and information in the
              URL is to be preferred.  The file will be scanned for  the  host
              and  user name (to find the password only) or for the host only,
              to find the first user name and  password  after  that  machine,
              which ever information is not specified.

       CURL_NETRC_REQUIRED (2)
              The  use  of  the  .netrc  file  is required, and any credential
              information present in the URL is ignored.   The  file  will  be
              scanned  for  the host and user name (to find the password only)
              or for the host only, to find the first user name  and  password
              after that machine, which ever information is not specified.

DEFAULT
       CURL_NETRC_IGNORED

PROTOCOLS
       Most

EXAMPLE
       CURL *curl = curl_easy_init();
       if(curl) {
         CURLcode ret;
         curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/");
         curl_easy_setopt(curl, CURLOPT_NETRC, CURL_NETRC_OPTIONAL);
         ret = curl_easy_perform(curl);
       }

AVAILABILITY
       Always

RETURN VALUE
       Returns CURLE_OK


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


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | web/curl         |
       +---------------+------------------+
       |Stability      | Uncommitted      |
       +---------------+------------------+

SEE ALSO
       CURLOPT_USERPWD(3), CURLOPT_USERNAME(3), CURLOPT_NETRC_FILE(3),



NOTES
       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source       was       downloaded      from       https://curl.se/down-
       load/curl-7.83.1.tar.bz2.

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



libcurl 7.83.1                 January 07, 2022               CURLOPT_NETRC(3)