CURLOPT_SASL_IR(3)

CURLOPT_SASL_IR3

Send initial response in first packet

Usage

#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SASL_IR, long enable);

Overview

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

This functionality affects imap and smtp

Examples

int main(void)
{
  CURL *curl = curl_easy_init();
  if(curl) {
    CURLcode result;
    curl_easy_setopt(curl, CURLOPT_URL, "smtp://example.com/");
    curl_easy_setopt(curl, CURLOPT_SASL_IR, 1L);
    result = curl_easy_perform(curl);
    curl_easy_cleanup(curl);
  }
}

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).

Releases

7 releases since Debian 8 (Jessie); the text changed 6 times.

  1. 8
  2. 9
  3. 10
  4. 11
  5. 12
  6. 13
  7. Arch

Availability

Added in curl 7.31.0

From curl 8.23.0-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.