Provided by: libcurl4-doc_7.81.0-1ubuntu1.20_all bug

NAME

       CURLOPT_COOKIE - HTTP Cookie header

SYNOPSIS

       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_COOKIE, char *cookie);

DESCRIPTION

       Pass  a  pointer  to  a  null-terminated string as parameter. It will be used to set a cookie in the HTTP
       request. The format of the string should be NAME=CONTENTS, where NAME is the cookie name and CONTENTS  is
       what the cookie should contain.

       If  you  need  to  set  multiple  cookies,  set  them  all  using a single option concatenated like this:
       "name1=content1; name2=content2;" etc.

       This option sets the cookie header explicitly in the outgoing request(s). If multiple requests  are  done
       due to authentication, followed redirections or similar, they will all get this cookie passed on.

       The  cookies  set  by this option are separate from the internal cookie storage held by the cookie engine
       and will not be modified by it. If you enable the cookie engine and either you have imported a cookie  of
       the same name (e.g. 'foo') or the server has set one, it will have no effect on the cookies you set here.
       A  request  to  the  server will send both the 'foo' held by the cookie engine and the 'foo' held by this
       option. To set a cookie that is instead held by the cookie engine and can be modified by the  server  use
       CURLOPT_COOKIELIST(3).

       Using this option multiple times will only make the latest string override the previous ones.

       This  option  will  not  enable  the  cookie engine. Use CURLOPT_COOKIEFILE(3) or CURLOPT_COOKIEJAR(3) to
       enable parsing and sending cookies automatically.

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

DEFAULT

       NULL, no cookies

PROTOCOLS

       HTTP

EXAMPLE

       CURL *curl = curl_easy_init();
       if(curl) {
         curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");

         curl_easy_setopt(curl, CURLOPT_COOKIE, "tool=curl; fun=yes;");

         curl_easy_perform(curl);
       }

AVAILABILITY

       If HTTP is enabled

RETURN VALUE

       Returns CURLE_OK if HTTP is enabled, CURLE_UNKNOWN_OPTION if not, or  CURLE_OUT_OF_MEMORY  if  there  was
       insufficient heap space.

SEE ALSO

       CURLOPT_COOKIEFILE(3), CURLOPT_COOKIEJAR(3), CURLOPT_COOKIELIST(3), CURLOPT_HTTPHEADER(3),

libcurl 7.81.0                                  November 26, 2021                              CURLOPT_COOKIE(3)