curl/docs/libcurl/opts/CURLOPT_TFTP_NO_OPTIONS.md
Daniel Stenberg e3fe020089
docs/libcurl: generate PROTOCOLS from meta-data
Remove the PROTOCOLS section from the source files completely and
instead generate them based on the header data in the curldown files.

It also generates TLS backend information for options marked for TLS as
protocol.

Closes #13175
2024-03-23 18:13:03 +01:00

1.5 KiB

c SPDX-License-Identifier Title Section Source See-also Protocol
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. curl CURLOPT_TFTP_NO_OPTIONS 3 libcurl
CURLOPT_TFTP_BLKSIZE (3)
TFTP

NAME

CURLOPT_TFTP_NO_OPTIONS - send no TFTP options requests

SYNOPSIS

#include <curl/curl.h>

CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TFTP_NO_OPTIONS, long onoff);

DESCRIPTION

Set onoff to 1L to exclude all TFTP options defined in RFC 2347, RFC 2348 and RFC 2349 from read and write requests.

This option improves interoperability with legacy servers that do not acknowledge or properly implement TFTP options. When this option is used CURLOPT_TFTP_BLKSIZE(3) is ignored.

DEFAULT

0

EXAMPLE

size_t write_callback(char *ptr, size_t size, size_t nmemb, void *fp)
{
  return fwrite(ptr, size, nmemb, (FILE *)fp);
}

int main(void)
{
  CURL *curl = curl_easy_init();
  if(curl) {
    FILE *fp = fopen("foo.bin", "wb");
    if(fp) {
      curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)fp);
      curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);

      curl_easy_setopt(curl, CURLOPT_URL, "tftp://example.com/foo.bin");

      /* do not send TFTP options requests */
      curl_easy_setopt(curl, CURLOPT_TFTP_NO_OPTIONS, 1L);

      /* Perform the request */
      curl_easy_perform(curl);

      fclose(fp);
    }
    curl_easy_cleanup(curl);
  }
}

AVAILABILITY

Added in 7.48.0

RETURN VALUE

Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.