---
name: "CURLOPT_SASL_IR"
section: "3"
platform: "macos"
package: "curl"
version: "166.0.0.0.1"
release: "macOS 26.5"
platforms: ["linux", "macos"]
url: "https://new.carta.tech/CURLOPT_SASL_IR"
---

# CURLOPT\_SASL\_IR(3)

send initial response in first packet

## NAME

CURLOPT\_SASL\_IR - send initial response in first packet

## SYNOPSIS

```
#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

IMAP, POP3 and SMTP

## EXAMPLE

```
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

Added in 7.31.0

## RETURN VALUE

Returns CURLE\_OK if the option is supported, and CURLE\_UNKNOWN\_OPTION if not.

## SEE ALSO

[**CURLOPT\_MAIL\_AUTH**(3)](/CURLOPT_MAIL_AUTH/3.md), [**CURLOPT\_MAIL\_FROM**(3)](/CURLOPT_MAIL_FROM/3.md), [**CURLOPT\_SASL\_AUTHZID**(3)](/CURLOPT_SASL_AUTHZID/3.md)
