curl/docs/libcurl/opts/CURLOPT_SASL_IR.md
Daniel Stenberg e694c8284a
docs/libcurl/opts: clarify the return values
Expand a little.

- mention the type name of the return code
- avoid stating which exact return codes that might be returned, as that
  varies over time, builds and conditions
- avoid stating some always return OK
- refer to the manpage documenting all the return codes

Closes #15900
2025-01-02 17:13:33 +01:00

75 lines
1.4 KiB
Markdown

---
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
SPDX-License-Identifier: curl
Title: CURLOPT_SASL_IR
Section: 3
Source: libcurl
See-also:
- CURLOPT_MAIL_AUTH (3)
- CURLOPT_MAIL_FROM (3)
- CURLOPT_SASL_AUTHZID (3)
Protocol:
- SMTP
- IMAP
Added-in: 7.31.0
---
# NAME
CURLOPT_SASL_IR - send initial response in first packet
# SYNOPSIS
~~~c
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SASL_IR, long enable);
~~~
# DESCRIPTION
Pass a long. If the value is 1, curl sends the initial response to the server
in the first authentication packet in order to reduce the number of ping pong
requests. Only applicable to the following supporting SASL authentication
mechanisms:
* Login
* Plain
* GSSAPI
* NTLM
* OAuth 2.0
Note: Whilst IMAP supports this option there is no need to explicitly set it,
as libcurl can determine the feature itself when the server supports the
SASL-IR CAPABILITY.
# DEFAULT
0
# %PROTOCOLS%
# EXAMPLE
~~~c
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
CURLcode res;
curl_easy_setopt(curl, CURLOPT_URL, "smtp://example.com/");
curl_easy_setopt(curl, CURLOPT_SASL_IR, 1L);
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
}
~~~
# %AVAILABILITY%
# RETURN VALUE
curl_easy_setopt(3) returns a CURLcode indicating success or error.
CURLE_OK (0) means everything was OK, non-zero means an error occurred, see
libcurl-errors(3).