curl_easy_setopt - функция для упрощенной настройки опций, обрабатываемых curl.
SYNOPSIS
#include < curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLoption option, parameter);
ОПИСАНИЕ
Функция curl_easy_setopt(3) используется для того, чтобы указать для libcurl вариант поведения. Путем установки соответствующих опция приложение может менять поведение libcurl. Все опции устанавливаются путем указания константы опции, за которой идет параметр. Этот параметр может быть типа long, указателем на функцию, указателем на объект или curl_off_t, в зависимости в зависимости от того, что ожидает определенная опция. Пожалуйста внимательно изучите это руководство, поскольку неправильные входные значения могут привести к плохому поведению libcurl! За один вызов curl_easy_setopt вы можете установить только одну опцию. Типовое приложение использует множество вызовов curl_easy_setopt(3) на фазе настройки.
Параметры, установленные с помощью этой функции, действительны для всех предстоящих передач, выполняемых для указанного дескриптора handle. Опции никоим образом не сбрасываются между транзакциями, поэтому если вы хотите, чтобы последующие транзакции проходили с другими опциями, то необходимо поменять эти опции между транзакциями. Вы можете также при желании сбросить все опции обратно к их внутреннему состоянию по умолчанию путем вызова curl_easy_reset(3).
Строки, передаваемые в libcurl как аргументы 'char *', копируются библиотекой; таким образом, хранилище строки, связанное с аргументом указателя, может быть перезаписано после того, как curl_easy_setopt(3) выполнит возврат. Единственное исключение их этого правила составляет CURLOPT_POSTFIELDS(3), однако альтернатива этой опции CURLOPT_COPYPOSTFIELDS(3), копирующая строку, имеет некоторые характеристики использования, которые вам необходимо прочитать. Эта функция не принимает входные строки, которые по размеру больше CURL_MAX_INPUT_LENGTH (8 MB).
Порядок, в котором опции устанавливаются, не имеет значения.
До версии 7.17.0 строки не копируются. Вместо этого пользователю необходимо было их оставлять доступными, пока libcurl в них нуждается.
Параметр дескриптора handle это возвращаемое значение из вызова curl_easy_init(3) или curl_easy_duphandle(3).
ОПЦИИ ПОВЕДЕНИЯ
CURLOPT_VERBOSE Покажет подробную информацию. См. CURLOPT_VERBOSE(3).
CURLOPT_HEADER Подключит заголовок в тело вывода. См. CURLOPT_HEADER(3).
CURLOPT_NOPROGRESS Выключит измеритель прогресса. См. CURLOPT_NOPROGRESS(3).
CURLOPT_NOSIGNAL Не устанавливать обработчики сигналов. См. CURLOPT_NOSIGNAL(3).
CURLOPT_WILDCARDMATCH Передать несколько файлов в соответствии с шаблоном имени (file name pattern). См. CURLOPT_WILDCARDMATCH(3).
ОПЦИИ ФУНКЦИЙ ОБРАТНОГО ВЫЗОВА
CURLOPT_WRITEFUNCTION Callback для записи данных. См. CURLOPT_WRITEFUNCTION(3).
CURLOPT_WRITEDATA Указатель на данные для передачи в write callback. См. CURLOPT_WRITEDATA(3).
CURLOPT_READFUNCTION Callback для чтения данных. См. CURLOPT_READFUNCTION(3).
CURLOPT_READDATA Указатель на данные, передаваемый в read callback. См. CURLOPT_READDATA(3).
CURLOPT_IOCTLFUNCTION Callback для операций I/O. См. CURLOPT_IOCTLFUNCTION(3).
CURLOPT_IOCTLDATA Указатель на данные, передаваемый в I/O callback. См. CURLOPT_IOCTLDATA(3).
CURLOPT_SEEKFUNCTION Callback для операций seek. См. CURLOPT_SEEKFUNCTION(3).
CURLOPT_SEEKDATA Указатель на данные, передаваемый в seek callback. См. CURLOPT_SEEKDATA(3).
CURLOPT_SOCKOPTFUNCTION Callback для операций sockopt. См. CURLOPT_SOCKOPTFUNCTION(3).
CURLOPT_SOCKOPTDATA Указатель на данные, передаваемый в sockopt callback. См. CURLOPT_SOCKOPTDATA(3)
CURLOPT_OPENSOCKETFUNCTION Callback для socket creation. См. CURLOPT_OPENSOCKETFUNCTION(3)
CURLOPT_OPENSOCKETDATA Указатель на данные, передаваемый в open socket callback. См. CURLOPT_OPENSOCKETDATA(3)
CURLOPT_CLOSESOCKETFUNCTION Callback для closing socket. См. CURLOPT_CLOSESOCKETFUNCTION(3).
CURLOPT_CLOSESOCKETDATA Указатель на данные, передаваемый в close socket callback. См. CURLOPT_CLOSESOCKETDATA(3).
CURLOPT_PROGRESSFUNCTION OBSOLETE callback для progress meter. См. CURLOPT_PROGRESSFUNCTION(3).
CURLOPT_PROGRESSDATA Указатель на данные, передаваемый в progress meter callback. См. CURLOPT_PROGRESSDATA(3).
CURLOPT_XFERINFOFUNCTION Callback для progress meter. См. CURLOPT_XFERINFOFUNCTION(3).
CURLOPT_XFERINFODATA Указатель на данные, передаваемый в progress meter callback. См. CURLOPT_XFERINFODATA(3).
CURLOPT_HEADERFUNCTION Callback для записи принятых заголовков. См. CURLOPT_HEADERFUNCTION(3).
CURLOPT_HEADERDATA Указатель на данные, передаваемый в header callback. См. CURLOPT_HEADERDATA(3).
CURLOPT_DEBUGFUNCTION Callback для информации отладки. См. CURLOPT_DEBUGFUNCTION(3).
CURLOPT_DEBUGDATA Указатель на данные, передаваемый в debug callback. См. CURLOPT_DEBUGDATA(3).
CURLOPT_SSL_CTX_FUNCTION Callback для SSL context logic. См. CURLOPT_SSL_CTX_FUNCTION(3).
CURLOPT_SSL_CTX_DATA Указатель на данные, передаваемый в SSL context callback. См. CURLOPT_SSL_CTX_DATA(3)
CURLOPT_CONV_TO_NETWORK_FUNCTION Callback для code base conversion. См. CURLOPT_CONV_TO_NETWORK_FUNCTION(3).
CURLOPT_CONV_FROM_NETWORK_FUNCTION Callback для code base conversion. См. CURLOPT_CONV_FROM_NETWORK_FUNCTION(3).
CURLOPT_CONV_FROM_UTF8_FUNCTION Callback для code base conversion. См. CURLOPT_CONV_FROM_UTF8_FUNCTION(3).
CURLOPT_INTERLEAVEFUNCTION Callback для RTSP interleaved data. См. CURLOPT_INTERLEAVEFUNCTION(3).
CURLOPT_INTERLEAVEDATA Указатель на данные, передаваемый в RTSP interleave callback. См. CURLOPT_INTERLEAVEDATA(3).
CURLOPT_CHUNK_BGN_FUNCTION Callback для wildcard download start of chunk. См. CURLOPT_CHUNK_BGN_FUNCTION(3).
CURLOPT_CHUNK_END_FUNCTION Callback для wildcard download end of chunk. См. CURLOPT_CHUNK_END_FUNCTION(3).
CURLOPT_CHUNK_DATA Указатель на данные, передаваемый в chunk callbacks. См. CURLOPT_CHUNK_DATA(3).
CURLOPT_FNMATCH_FUNCTION Callback для wildcard matching. См. CURLOPT_FNMATCH_FUNCTION(3).
CURLOPT_FNMATCH_DATA Указатель на данные, передаваемый в wildcard matching callback. См. CURLOPT_FNMATCH_DATA(3).
CURLOPT_SUPPRESS_CONNECT_HEADERS Подавляет proxy CONNECT response headers из пользовательских callback-функций. См. CURLOPT_SUPPRESS_CONNECT_HEADERS(3).
CURLOPT_RESOLVER_START_FUNCTION Callback для вызова перед запуском нового resolve request. См. CURLOPT_RESOLVER_START_FUNCTION(3).
CURLOPT_RESOLVER_START_DATA Указатель на данные, передаваемый в resolver start callback. См. CURLOPT_RESOLVER_START_DATA(3).
ОПЦИИ ОШИБОК
CURLOPT_ERRORBUFFER Буфер сообщения об ошибках. См. CURLOPT_ERRORBUFFER(3).
CURLOPT_STDERR Поток для замены stderr. См. CURLOPT_STDERR(3).
CURLOPT_FAILONERROR Вызывает отказ на ошибках HTTP 4xx. CURLOPT_FAILONERROR(3).
CURLOPT_KEEP_SENDING_ON_ERROR Продолжать передавать при ошибках HTTP >= 300. CURLOPT_KEEP_SENDING_ON_ERROR(3).
СЕТЕВЫЕ ОПЦИИ
CURLOPT_URL URL, на котором осуществляется работа. См. CURLOPT_URL(3).
CURLOPT_PATH_AS_IS Запретить удаление последовательностей /../ и /./ в пути. См. CURLOPT_PATH_AS_IS(3).
CURLOPT_PROTOCOLS Разрешенные протоколы. См. CURLOPT_PROTOCOLS(3).
CURLOPT_REDIR_PROTOCOLS Протоколы для разрешения перенаправления. См. CURLOPT_REDIR_PROTOCOLS(3).
CURLOPT_DEFAULT_PROTOCOL Протокол по умолчанию. См. CURLOPT_DEFAULT_PROTOCOL(3).
CURLOPT_PROXY Используемый прокси. См. CURLOPT_PROXY(3).
CURLOPT_PRE_PROXY Используемый socks прокси. См. CURLOPT_PRE_PROXY(3).
CURLOPT_PROXYPORT Используемый порт прокси. См. CURLOPT_PROXYPORT(3).
CURLOPT_PROXYTYPE Тип прокси. См. CURLOPT_PROXYTYPE(3).
CURLOPT_NOPROXY Фильтрует хосты от использования прокси. CURLOPT_NOPROXY(3).
CURLOPT_HTTPPROXYTUNNEL Туннель через HTTP прокси. CURLOPT_HTTPPROXYTUNNEL(3).
CURLOPT_CONNECT_TO Подключение к определенному хосту и порту. См. CURLOPT_CONNECT_TO(3).
CURLOPT_SOCKS5_AUTH Методы аутентификации Socks5. См. CURLOPT_SOCKS5_AUTH(3).
CURLOPT_SOCKS5_GSSAPI_SERVICE Имя службы Socks5 GSSAPI. CURLOPT_SOCKS5_GSSAPI_SERVICE(3).
CURLOPT_SOCKS5_GSSAPI_NEC Режим Socks5 GSSAPI NEC. См. CURLOPT_SOCKS5_GSSAPI_NEC(3)
CURLOPT_PROXY_SERVICE_NAME Имя сервиса аутентификации прокси. CURLOPT_PROXY_SERVICE_NAME(3).
CURLOPT_HAPROXYPROTOCOL Отправка заголовка протокола HAProxy PROXY v1. См. CURLOPT_HAPROXYPROTOCOL(3).
CURLOPT_SERVICE_NAME Имя сервиса аутентификации. CURLOPT_SERVICE_NAME(3).
CURLOPT_INTERFACE Привязка соединения локально к этому интерфейсу. См. CURLOPT_INTERFACE(3).
CURLOPT_LOCALPORT Привязка соединения локально к этому порту. См. CURLOPT_LOCALPORT(3).
CURLOPT_LOCALPORTRANGE Привязка соединения локально к этому диапазону портов. См. CURLOPT_LOCALPORTRANGE(3).
CURLOPT_DNS_CACHE_TIMEOUT Таймаут для кеша DNS. См. CURLOPT_DNS_CACHE_TIMEOUT(3).
CURLOPT_DNS_USE_GLOBAL_CACHE OBSOLETE разрешение глобального кеша DNS. См. CURLOPT_DNS_USE_GLOBAL_CACHE(3).
CURLOPT_DOH_URL Использовать этот DOH сервер для разрешения имен. См. CURLOPT_DOH_URL(3).
CURLOPT_BUFFERSIZE Запросить альтернативный размер буфера. См. CURLOPT_BUFFERSIZE(3).
CURLOPT_PORT Номер порта для подключения. См. CURLOPT_PORT(3).
CURLOPT_TCP_FASTOPEN Разрешить TFO, TCP Fast Open. См. CURLOPT_TCP_FASTOPEN(3).
CURLOPT_TCP_NODELAY Разрешить алгоритм Nagle. См. CURLOPT_TCP_NODELAY(3).
CURLOPT_ADDRESS_SCOPE Область IPv6 для локальных адресов. См. CURLOPT_ADDRESS_SCOPE(3).
CURLOPT_TCP_KEEPALIVE Разрешить TCP keep-alive. См. CURLOPT_TCP_KEEPALIVE(3).
CURLOPT_TCP_KEEPIDLE Время ожидания перед отправкой keep-alive. См. CURLOPT_TCP_KEEPIDLE(3).
CURLOPT_TCP_KEEPINTVL Интервал между пробными запросами keep-alive. См. CURLOPT_TCP_KEEPINTVL(3).
CURLOPT_UNIX_SOCKET_PATH Путь до Unix domain socket. См. CURLOPT_UNIX_SOCKET_PATH(3).
CURLOPT_ABSTRACT_UNIX_SOCKET Путь до абстрактного Unix domain socket. См. CURLOPT_ABSTRACT_UNIX_SOCKET(3).
ОПЦИИ ИМЕН И ПАРОЛЕЙ (аутентификация)
CURLOPT_NETRC Разрешить .netrc парсинг. См. CURLOPT_NETRC(3).
CURLOPT_NETRC_FILE Имя файла .netrc. См. CURLOPT_NETRC_FILE(3).
CURLOPT_USERPWD Имя пользователя и пароль. См. CURLOPT_USERPWD(3).
CURLOPT_PROXYUSERPWD Имя пользователя и пароль прокси. См. CURLOPT_PROXYUSERPWD(3).
CURLOPT_USERNAME Имя пользователя. См. CURLOPT_USERNAME(3).
CURLOPT_PASSWORD Пароль. См. CURLOPT_PASSWORD(3).
CURLOPT_LOGIN_OPTIONS Опции логина. См. CURLOPT_LOGIN_OPTIONS(3).
CURLOPT_PROXYUSERNAME Имя пользователя прокси. См. CURLOPT_PROXYUSERNAME(3).
CURLOPT_PROXYPASSWORD Пароль прокси. См. CURLOPT_PROXYPASSWORD(3).
CURLOPT_HTTPAUTH Методы аутентификации сервера HTTP. См. CURLOPT_HTTPAUTH(3).
CURLOPT_TLSAUTH_USERNAME Имя пользователя TLS аутентификации. См. CURLOPT_TLSAUTH_USERNAME(3).
CURLOPT_PROXY_TLSAUTH_USERNAME Имя пользователя TLS аутентификации прокси. См. CURLOPT_PROXY_TLSAUTH_USERNAME(3).
CURLOPT_TLSAUTH_PASSWORD Пароль TLS аутентификации. См. CURLOPT_TLSAUTH_PASSWORD(3).
CURLOPT_PROXY_TLSAUTH_PASSWORD Пароль TLS аутентификации прокси. См. CURLOPT_PROXY_TLSAUTH_PASSWORD(3).
CURLOPT_TLSAUTH_TYPE Методы TLS аутентификации. См. CURLOPT_TLSAUTH_TYPE(3).
CURLOPT_PROXY_TLSAUTH_TYPE Методы TLS аутентификации прокси. См. CURLOPT_PROXY_TLSAUTH_TYPE(3).
CURLOPT_PROXYAUTH Методы аутентификации HTTP прокси. См. CURLOPT_PROXYAUTH(3).
CURLOPT_SASL_AUTHZID Удостоверение личности SASL (authorisation identity: личность, чтобы действовать в качестве). См. CURLOPT_SASL_AUTHZID(3)
CURLOPT_SASL_IR Разрешить SASL initial response. См. CURLOPT_SASL_IR(3).
CURLOPT_XOAUTH2_BEARER OAuth2 bearer token. См. CURLOPT_XOAUTH2_BEARER(3).
CURLOPT_DISALLOW_USERNAME_IN_URL Не позволять имя пользователя в URL. См. CURLOPT_DISALLOW_USERNAME_IN_URL(3).
ОПЦИИ HTTP
CURLOPT_AUTOREFERER Автоматически установит Referer: заголовка. См. CURLOPT_AUTOREFERER(3).
CURLOPT_ACCEPT_ENCODING Accept-Encoding и автоматическая декомпрессия данных. См. CURLOPT_ACCEPT_ENCODING(3).
CURLOPT_TRANSFER_ENCODING Request Transfer-Encoding. См. CURLOPT_TRANSFER_ENCODING(3).
CURLOPT_FOLLOWLOCATION Следовать перенаправлениям HTTP. См. CURLOPT_FOLLOWLOCATION(3).
CURLOPT_UNRESTRICTED_AUTH Не ограничивайте аутентификацию исходным хостом. См. CURLOPT_UNRESTRICTED_AUTH(3).
CURLOPT_MAXREDIRS Максимальное количество перенаправлений, которым нужно следовать. См. CURLOPT_MAXREDIRS(3).
CURLOPT_POSTREDIR Как работают перенаправления после POST. См. CURLOPT_POSTREDIR(3).
CURLOPT_PUT Выдать запрос HTTP PUT. См. CURLOPT_PUT(3).
CURLOPT_POST Выдать запрос HTTP POST. См. CURLOPT_POST(3).
CURLOPT_POSTFIELDS Послать POST с этими данными. См. CURLOPT_POSTFIELDS(3).
CURLOPT_POSTFIELDSIZE Отключить strlen для данных POST. См. CURLOPT_POSTFIELDSIZE(3).
CURLOPT_POSTFIELDSIZE_LARGE Отключить strlen для данных POST. См. CURLOPT_POSTFIELDSIZE_LARGE(3).
CURLOPT_COPYPOSTFIELDS Отправить POST с этими данными - и сделать их копию. См. CURLOPT_COPYPOSTFIELDS(3).
CURLOPT_HTTPPOST Multipart formpost HTTP POST. См. CURLOPT_HTTPPOST(3).
CURLOPT_REFERER Referer: header. См. CURLOPT_REFERER(3).
CURLOPT_USERAGENT User-Agent: header. См. CURLOPT_USERAGENT(3).
CURLOPT_HTTPHEADER Пользовательские заголовки HTTP. См. CURLOPT_HTTPHEADER(3).
CURLOPT_HEADEROPT Управление пользовательскими заголовками. См. CURLOPT_HEADEROPT(3).
CURLOPT_PROXYHEADER Пользовательские заголовки HTTP, отправляемые прокси. См. CURLOPT_PROXYHEADER(3).
CURLOPT_HTTP200ALIASES Альтернативные версии 200 OK. См. CURLOPT_HTTP200ALIASES(3).
CURLOPT_COOKIE Куки для отправки. См. CURLOPT_COOKIE(3).
CURLOPT_COOKIEFILE Файл, откуда считываются куки. См. CURLOPT_COOKIEFILE(3).
CURLOPT_COOKIEJAR Файл для записи туда куки. См. CURLOPT_COOKIEJAR(3).
CURLOPT_COOKIESESSION Начать новую сессию куки. См. CURLOPT_COOKIESESSION(3).
CURLOPT_COOKIELIST Добавить куки или управлять ими. См. CURLOPT_COOKIELIST(3).
CURLOPT_ALTSVC Указать Alt-Svc: имя файла кеша. См. CURLOPT_ALTSVC(3).
CURLOPT_ALTSVC_CTRL Разрешить и конфигурировать Alt-Svc: treatment. См. CURLOPT_ALTSVC_CTRL(3).
CURLOPT_HSTS Установить файл кеша HSTS. См. CURLOPT_HSTS(3).
CURLOPT_HSTS_CTRL Разрешить HSTS. См. CURLOPT_HSTS_CTRL(3).
CURLOPT_HSTSREADFUNCTION Установить HSTS read callback. См. CURLOPT_HSTSREADFUNCTION(3).
CURLOPT_HSTSREADDATA Передать указатель в HSTS read callback. См. CURLOPT_HSTSREADDATA(3).
CURLOPT_HSTSWRITEFUNCTION Установить HSTS write callback. См. CURLOPT_HSTSWRITEFUNCTION(3).
CURLOPT_HSTSWRITEDATA Передать указатель в HSTS write callback. См. CURLOPT_HSTSWRITEDATA(3).
CURLOPT_HTTPGET Выполнить запрос HTTP GET. См. CURLOPT_HTTPGET(3).
CURLOPT_REQUEST_TARGET Установить цель запроса. CURLOPT_REQUEST_TARGET(3).
CURLOPT_HTTP_VERSION Используемая версия HTTP. CURLOPT_HTTP_VERSION(3).
CURLOPT_HTTP09_ALLOWED Разрешить ответы HTTP/0.9. CURLOPT_HTTP09_ALLOWED(3).
CURLOPT_IGNORE_CONTENT_LENGTH Игнорировать Content-Length. См. CURLOPT_IGNORE_CONTENT_LENGTH(3).
CURLOPT_HTTP_CONTENT_DECODING Запретить декодирование содержимого. См. CURLOPT_HTTP_CONTENT_DECODING(3).
CURLOPT_HTTP_TRANSFER_DECODING Запретить декодирование транзакции. См. CURLOPT_HTTP_TRANSFER_DECODING(3).
CURLOPT_EXPECT_100_TIMEOUT_MS 100-continue timeout. См. CURLOPT_EXPECT_100_TIMEOUT_MS(3).
CURLOPT_TRAILERFUNCTION Установить callback для отправки завершающих заголовков. См. CURLOPT_TRAILERFUNCTION(3).
CURLOPT_TRAILERDATA Пользовательский указатель, передаваемый в callback завершающих заголовков. См. CURLOPT_TRAILERDATA(3).
CURLOPT_PIPEWAIT Ждать соединения для передачи на нем. См. CURLOPT_PIPEWAIT(3).
CURLOPT_STREAM_DEPENDS Этот поток HTTP/2 зависит от другого. См. CURLOPT_STREAM_DEPENDS(3).
CURLOPT_STREAM_DEPENDS_E Этот поток HTTP/2 исключительно зависит от другого. См. CURLOPT_STREAM_DEPENDS_E(3).
CURLOPT_STREAM_WEIGHT Установить вес этого потока HTTP/2. См. CURLOPT_STREAM_WEIGHT(3).
ОПЦИИ SMTP
CURLOPT_MAIL_FROM Адрес отправителя. См. CURLOPT_MAIL_FROM(3).
CURLOPT_MAIL_RCPT Адрес получателей. См. CURLOPT_MAIL_RCPT(3).
CURLOPT_MAIL_AUTH Адрес аутентификации. См. CURLOPT_MAIL_AUTH(3).
CURLOPT_MAIL_RCPT_ALLLOWFAILS Разрешить команду RCPT TO для сбоя доставки на некоторых получателях. См. CURLOPT_MAIL_RCPT_ALLLOWFAILS(3)
ОПЦИИ TFTP
CURLOPT_TFTP_BLKSIZE Размер блока TFTP. См. CURLOPT_TFTP_BLKSIZE(3).
CURLOPT_TFTP_NO_OPTIONS Не отправлять опции запросов TFTP. См. CURLOPT_TFTP_NO_OPTIONS(3).
ОПЦИИ FTP
CURLOPT_FTPPORT Использовать активный FTP. См. CURLOPT_FTPPORT(3).
CURLOPT_QUOTE Команды, запускаемые перед транзакцией. См. CURLOPT_QUOTE(3).
CURLOPT_POSTQUOTE Команды, запускаемые после транзакции. См. CURLOPT_POSTQUOTE(3).
CURLOPT_PREQUOTE Команды для запуска непосредственно перед транзакцией. См. CURLOPT_PREQUOTE(3).
CURLOPT_APPEND Присоединить к remote файлу. См. CURLOPT_APPEND(3).
CURLOPT_FTP_USE_EPRT Использовать EPTR. См. CURLOPT_FTP_USE_EPRT(3).
CURLOPT_FTP_USE_EPSV Использовать EPSV. См. CURLOPT_FTP_USE_EPSV(3).
CURLOPT_FTP_USE_PRET Использовать PRET. См. CURLOPT_FTP_USE_PRET(3).
CURLOPT_FTP_CREATE_MISSING_DIRS Создать отсутствующие директории на remote сервере. См. CURLOPT_FTP_CREATE_MISSING_DIRS(3).
CURLOPT_FTP_RESPONSE_TIMEOUT Таймаут для ответов FTP. См. CURLOPT_FTP_RESPONSE_TIMEOUT(3).
CURLOPT_FTP_ALTERNATIVE_TO_USER Альтернатива для USER. См. CURLOPT_FTP_ALTERNATIVE_TO_USER(3).
CURLOPT_FTP_SKIP_PASV_IP Игнорировать IP-адрес в ответе PASV. См. CURLOPT_FTP_SKIP_PASV_IP(3).
CURLOPT_FTPSSLAUTH Управление обработкой TLS. См. CURLOPT_FTPSSLAUTH(3).
CURLOPT_FTP_SSL_CCC После проверки подлинности снова вернуться в режим, отличный от TLS. См. CURLOPT_FTP_SSL_CCC(3).
CURLOPT_FTP_ACCOUNT Отправка команды ACCT. См. CURLOPT_FTP_ACCOUNT(3).
CURLOPT_FTP_FILEMETHOD Указывает, как добраться до файлов. См. CURLOPT_FTP_FILEMETHOD(3).
ОПЦИИ RTSP
CURLOPT_RTSP_REQUEST Запрос RTSP. См. CURLOPT_RTSP_REQUEST(3).
CURLOPT_RTSP_SESSION_ID RTSP session-id. См. CURLOPT_RTSP_SESSION_ID(3).
CURLOPT_RTSP_STREAM_URI RTSP stream URI. См. CURLOPT_RTSP_STREAM_URI(3).
CURLOPT_RTSP_TRANSPORT RTSP Transport: header. См. CURLOPT_RTSP_TRANSPORT(3).
CURLOPT_RTSP_CLIENT_CSEQ Client CSEQ number. См. CURLOPT_RTSP_CLIENT_CSEQ(3).
CURLOPT_RTSP_SERVER_CSEQ CSEQ number для запроса RTSP Server->Client. См. CURLOPT_RTSP_SERVER_CSEQ(3).
CURLOPT_AWS_SIGV4 AWS HTTP V4 Signature. См. CURLOPT_AWS_SIGV4(3).
ОПЦИИ ПРОТОКОЛА
CURLOPT_TRANSFERTEXT Использовать текстовые транзакции. См. CURLOPT_TRANSFERTEXT(3).
CURLOPT_PROXY_TRANSFER_MODE Добавить режим транзакции для URL over proxy. См. CURLOPT_PROXY_TRANSFER_MODE(3).
CURLOPT_CRLF Преобразование символов новых строк. См. CURLOPT_CRLF(3).
CURLOPT_RANGE Запросы диапазона. См. CURLOPT_RANGE(3).
CURLOPT_RESUME_FROM Возобновление транзакции. См. CURLOPT_RESUME_FROM(3).
CURLOPT_RESUME_FROM_LARGE Возобновление транзакции. См. CURLOPT_RESUME_FROM_LARGE(3).
CURLOPT_CURLU Установка URL для работы вместе с CURLU *. См. CURLOPT_CURLU(3).
CURLOPT_CUSTOMREQUEST Пользовательский запрос/метод. См. CURLOPT_CUSTOMREQUEST(3).
CURLOPT_FILETIME Запрос модификации даты и времени файла. См. CURLOPT_FILETIME(3).
CURLOPT_DIRLISTONLY Только список директории. См. CURLOPT_DIRLISTONLY(3).
CURLOPT_NOBODY Не получать содержимое тела. См. CURLOPT_NOBODY(3).
CURLOPT_INFILESIZE Размер файла для отправки. CURLOPT_INFILESIZE(3).
CURLOPT_INFILESIZE_LARGE Размер файла для отправки. CURLOPT_INFILESIZE_LARGE(3).
CURLOPT_UPLOAD Выгрузка данных. См. CURLOPT_UPLOAD(3).
CURLOPT_UPLOAD_BUFFERSIZE Установка размера буфера выгрузки. См. CURLOPT_UPLOAD_BUFFERSIZE(3).
CURLOPT_MIMEPOST Post/send MIME data. См. CURLOPT_MIMEPOST(3).
CURLOPT_MAXFILESIZE Максимальный размер файла для получения. См. CURLOPT_MAXFILESIZE(3).
CURLOPT_MAXFILESIZE_LARGE Максимальный размер файла для получения. См. CURLOPT_MAXFILESIZE_LARGE(3).
CURLOPT_TIMECONDITION Сделать запрос с привязкой ко времени. См. CURLOPT_TIMECONDITION(3).
CURLOPT_TIMEVALUE Значение времени для запроса с привязкой ко времени. См. CURLOPT_TIMEVALUE(3).
CURLOPT_TIMEVALUE_LARGE Значение времени для запроса с привязкой ко времени. См. CURLOPT_TIMEVALUE_LARGE(3).
ОПЦИИ СОЕДИНЕНИЯ
CURLOPT_TIMEOUT Таймаут для всего запроса. См. CURLOPT_TIMEOUT(3).
CURLOPT_TIMEOUT_MS Таймаут в миллисекундах для всего запроса. См. CURLOPT_TIMEOUT_MS(3).
CURLOPT_LOW_SPEED_LIMIT Ограничение скорости для обрыва транзакции. См. CURLOPT_LOW_SPEED_LIMIT(3).
CURLOPT_LOW_SPEED_TIME Время, в течение которого скорость должна быть ниже, чтобы сработал обрыв транзакции по скорости. См. CURLOPT_LOW_SPEED_TIME(3).
CURLOPT_MAX_SEND_SPEED_LARGE Ограничение скорости выгрузки. См. CURLOPT_MAX_SEND_SPEED_LARGE(3).
CURLOPT_MAX_RECV_SPEED_LARGE Ограничение скорости загрузки. См. CURLOPT_MAX_RECV_SPEED_LARGE(3).
CURLOPT_MAXCONNECTS Максимальзое количество соединений в пуле соединений. См. CURLOPT_MAXCONNECTS(3).
CURLOPT_FRESH_CONNECT Использование нового соединения. CURLOPT_FRESH_CONNECT(3).
CURLOPT_FORBID_REUSE Предотвратить повторное использование последующих подключений. См. CURLOPT_FORBID_REUSE(3)
CURLOPT_MAXAGE_CONN Ограничить возраст соединений для повторного использования. См. CURLOPT_MAXAGE_CONN(3).
CURLOPT_CONNECTTIMEOUT Таймаут фазы соединения. См. CURLOPT_CONNECTTIMEOUT(3).
CURLOPT_CONNECTTIMEOUT_MS Таймаут фазы соединения в миллисекундах. См. CURLOPT_CONNECTTIMEOUT_MS(3).
CURLOPT_IPRESOLVE Какую версию протокола IP использовать. См. CURLOPT_IPRESOLVE(3).
CURLOPT_CONNECT_ONLY Только соединяться, больше ничего не делать. См. CURLOPT_CONNECT_ONLY(3).
CURLOPT_USE_SSL Использовать TLS/SSL. См. CURLOPT_USE_SSL(3).
CURLOPT_RESOLVE Предоставить фиксированное (пользовательское) отображение имени хоста на IP. См. CURLOPT_RESOLVE(3).
CURLOPT_DNS_INTERFACE Привязать разрешение имен к этому интерфейсу. См. CURLOPT_DNS_INTERFACE(3).
CURLOPT_DNS_LOCAL_IP4 Привязать разрешение имен к этому адресу IP4. См. CURLOPT_DNS_LOCAL_IP4(3).
CURLOPT_DNS_LOCAL_IP6 Привязать разрешение имен к этому адресу IP4. См. CURLOPT_DNS_LOCAL_IP6(3).
CURLOPT_DNS_SERVERS Предпочтительные сервера DNS. См. CURLOPT_DNS_SERVERS(3).
CURLOPT_DNS_SHUFFLE_ADDRESSES Перемешать адреса перед использование. См. CURLOPT_DNS_SHUFFLE_ADDRESSES(3).
CURLOPT_ACCEPTTIMEOUT_MS Таймаут ожидания подтверждения обратного подключения сервера. См. CURLOPT_ACCEPTTIMEOUT_MS(3).
CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS Таймаут протокола "счастливых глаз". См. CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS(3).
CURLOPT_UPKEEP_INTERVAL_MS Задает интервал, с которым выполняется обслуживание соединения. См. CURLOPT_UPKEEP_INTERVAL_MS(3).
ОПЦИИ SSL И БЕЗОПАСНОСТИ
CURLOPT_SSLCERT Сертификат клиента. См. CURLOPT_SSLCERT(3).
CURLOPT_SSLCERT_BLOB Буфер в памяти сертификата клиента. См. CURLOPT_SSLCERT_BLOB(3).
CURLOPT_PROXY_SSLCERT Сертификат клиента прокси. См. CURLOPT_PROXY_SSLCERT(3).
CURLOPT_PROXY_SSLCERT_BLOB Буфер в памяти сертификата клиента прокси. См. CURLOPT_PROXY_SSLCERT_BLOB(3).
CURLOPT_SSLCERTTYPE Тип сертификата клиента. См. CURLOPT_SSLCERTTYPE(3).
CURLOPT_PROXY_SSLCERTTYPE Тип сертификата клиента прокси. См. CURLOPT_PROXY_SSLCERTTYPE(3).
CURLOPT_SSLKEY Ключ клиента. См. CURLOPT_SSLKEY(3).
CURLOPT_SSLKEY_BLOB Буфер в памяти ключа клиента. См. CURLOPT_SSLKEY_BLOB(3).
CURLOPT_PROXY_SSLKEY Ключ клиента прокси. См. CURLOPT_PROXY_SSLKEY(3).
CURLOPT_PROXY_SSLKEY_BLOB Буфер в памяти ключа клиента прокси. См. CURLOPT_PROXY_SSLKEY_BLOB(3).
CURLOPT_SSLKEYTYPE Тип ключа клиента. См. CURLOPT_SSLKEYTYPE(3).
CURLOPT_PROXY_SSLKEYTYPE Тип ключа клиента прокси. См. CURLOPT_PROXY_SSLKEYTYPE(3).
CURLOPT_KEYPASSWD Пароль ключа клиента. См. CURLOPT_KEYPASSWD(3).
CURLOPT_PROXY_KEYPASSWD Пароль ключа клиента прокси. См. CURLOPT_PROXY_KEYPASSWD(3).
CURLOPT_SSL_EC_CURVES Установка кривых обмена ключами. См. CURLOPT_SSL_EC_CURVES(3).
CURLOPT_SSL_ENABLE_ALPN Разрешение использования ALPN. См. CURLOPT_SSL_ENABLE_ALPN(3).
CURLOPT_SSL_ENABLE_NPN Разрешение использования NPN. См. CURLOPT_SSL_ENABLE_NPN(3).
CURLOPT_SSLENGINE Использовать идентификатор с подсистемой SSL. См. CURLOPT_SSLENGINE(3).
CURLOPT_SSLENGINE_DEFAULT Подсистема SSL по умолчанию. См. CURLOPT_SSLENGINE_DEFAULT(3).
CURLOPT_SSL_FALSESTART Разрешить TLS False Start. См. CURLOPT_SSL_FALSESTART(3).
CURLOPT_SSLVERSION Используемая версия SSL. См. CURLOPT_SSLVERSION(3).
CURLOPT_PROXY_SSLVERSION Используемая версия прокси SSL. См. CURLOPT_PROXY_SSLVERSION(3).
CURLOPT_SSL_VERIFYHOST Проверять имя хоста в сертификате SSL. См. CURLOPT_SSL_VERIFYHOST(3).
CURLOPT_PROXY_SSL_VERIFYHOST Проверять имя хоста в сертификате прокси SSL. См. CURLOPT_PROXY_SSL_VERIFYHOST(3)
CURLOPT_SSL_VERIFYPEER Проверять сертификат SSL. См. CURLOPT_SSL_VERIFYPEER(3).
CURLOPT_PROXY_SSL_VERIFYPEER Проверять сертификат прокси SSL. См. CURLOPT_PROXY_SSL_VERIFYPEER(3).
CURLOPT_SSL_VERIFYSTATUS Проверять статус сертификата SSL. См. CURLOPT_SSL_VERIFYSTATUS(3).
CURLOPT_CAINFO Пакет сертификатов авторизационного центра (CA cert bundle). См. CURLOPT_CAINFO(3).
CURLOPT_PROXY_CAINFO Пакет сертификатов прокси авторизационного центра (proxy CA cert bundle). См. CURLOPT_PROXY_CAINFO(3).
CURLOPT_ISSUERCERT Издатель сертификата. См. CURLOPT_ISSUERCERT(3).
CURLOPT_ISSUERCERT_BLOB Буфер памяти издателя сертификата. См. CURLOPT_ISSUERCERT_BLOB(3).
CURLOPT_PROXY_ISSUERCERT Издатель сертификата прокси. См. CURLOPT_PROXY_ISSUERCERT(3).
CURLOPT_PROXY_ISSUERCERT_BLOB Буфер памяти издателя сертификата прокси. См. CURLOPT_PROXY_ISSUERCERT_BLOB(3).
CURLOPT_CAPATH Путь до CA cert bundle. См. CURLOPT_CAPATH(3).
CURLOPT_PROXY_CAPATH Путь до proxy CA cert bundle. См. CURLOPT_PROXY_CAPATH(3).
CURLOPT_CRLFILE Список отзыва сертификатов. См. CURLOPT_CRLFILE(3).
CURLOPT_PROXY_CRLFILE Список отзыва сертификатов прокси. См. CURLOPT_PROXY_CRLFILE(3).
CURLOPT_CERTINFO Извлечь информацию сертификата. См. CURLOPT_CERTINFO(3).
CURLOPT_PINNEDPUBLICKEY Установить закрепленный открытый ключ SSL. См. CURLOPT_PINNEDPUBLICKEY(3).
CURLOPT_PROXY_PINNEDPUBLICKEY Установить закрепленный открытый ключ SSL прокси. См. CURLOPT_PROXY_PINNEDPUBLICKEY(3).
CURLOPT_RANDOM_FILE Предоставить источник случайных данных (entropy random data). См. CURLOPT_RANDOM_FILE(3).
CURLOPT_EGDSOCKET Идентифицировать сокет EGD для энтропии. См. CURLOPT_EGDSOCKET(3).
CURLOPT_SSL_CIPHER_LIST Используемые шифровальщики. См. CURLOPT_SSL_CIPHER_LIST(3).
CURLOPT_PROXY_SSL_CIPHER_LIST Используемые шифровальщики прокси. См. CURLOPT_PROXY_SSL_CIPHER_LIST(3).
CURLOPT_TLS13_CIPHERS Используемые наборы шифров TLS 1.3. См. CURLOPT_TLS13_CIPHERS(3).
CURLOPT_PROXY_TLS13_CIPHERS Используемые наборы шифров TLS 1.3 прокси. См. CURLOPT_PROXY_TLS13_CIPHERS(3).
CURLOPT_SSL_SESSIONID_CACHE Запрет кеш идентификатора сессии SSL. См. CURLOPT_SSL_SESSIONID_CACHE(3).
CURLOPT_SSL_OPTIONS Управление поведением SSL. См. CURLOPT_SSL_OPTIONS(3).
CURLOPT_PROXY_SSL_OPTIONS Управление поведением SSL прокси. См. CURLOPT_PROXY_SSL_OPTIONS(3).
CURLOPT_KRBLEVEL Уровень безопасности Kerberos. См. CURLOPT_KRBLEVEL(3).
CURLOPT_GSSAPI_DELEGATION Запретить делегирование GSS-API. См. CURLOPT_GSSAPI_DELEGATION(3).
ОПЦИИ SSH
CURLOPT_SSH_AUTH_TYPES Типы аутентификации SSH. См. CURLOPT_SSH_AUTH_TYPES(3).
CURLOPT_SSH_COMPRESSION Разрешить компрессию SSH. См. CURLOPT_SSH_COMPRESSION(3).
CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 MD5 публичного ключа хоста. См. CURLOPT_SSH_HOST_PUBLIC_KEY_MD5(3).
CURLOPT_SSH_PUBLIC_KEYFILE Имя файла публичного ключа. См. CURLOPT_SSH_PUBLIC_KEYFILE(3).
CURLOPT_SSH_PRIVATE_KEYFILE Имя файла приватного ключа. См. CURLOPT_SSH_PRIVATE_KEYFILE(3).
CURLOPT_SSH_KNOWNHOSTS Имя файла с известными хостами. См. CURLOPT_SSH_KNOWNHOSTS(3).
CURLOPT_SSH_KEYFUNCTION Callback для обработки известных хостов. См. CURLOPT_SSH_KEYFUNCTION(3).
CURLOPT_SSH_KEYDATA Пользовательский указатель на данные ключа, передаваемый в callback-функцию. См. CURLOPT_SSH_KEYDATA(3).
ДРУГИЕ ОПЦИИ
CURLOPT_PRIVATE Указатель на приватное хранилище. См. CURLOPT_PRIVATE(3).
CURLOPT_SHARE Используемый общий объект. См. CURLOPT_SHARE(3).
CURLOPT_NEW_FILE_PERMS Режим для создания новых remote файлов. См. CURLOPT_NEW_FILE_PERMS(3).
CURLOPT_NEW_DIRECTORY_PERMS Режим для создания новых remote директорий. См. CURLOPT_NEW_DIRECTORY_PERMS(3).
ОПЦИИ TELNET
CURLOPT_TELNETOPTIONS Опции TELNET. См. CURLOPT_TELNETOPTIONS(3).
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
CURLE_OK (ноль) означает, что опция была успешно установлена, ненулевое значение показывает случаи ошибки, определенные в заголовке < curl/curl.h>. См. man-руководство libcurl-errors(3) для полного описания значения кодов ошибок.
Строки, переданные в libcurl, должны быть меньше 8000000 байт, иначе curl_easy_setopt(3) возвратит CURLE_BAD_FUNCTION_ARGUMENT (добавлено в 7.65.0).
CURLE_BAD_FUNCTION_ARGUMENT возвращается, кода аргумент для опции недопустимый, например выходит за допустимый диапазон.
Если вы попробуете установить опцию, про которую libcurl не знает, возможно потому что версия библиотеки слишком старая, или опция была удалена в более свежей версии, то эта функция возвратит CURLE_UNKNOWN_OPTION. Если поддержка опции была запрещена во время компиляции, то будет возвращено значение CURLE_NOT_BUILT_IN.
ПРИМЕР ИСПОЛЬЗОВАНИЯ
CURL *curl = curl_easy_init(); if(curl)
{
CURLcode res;
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
СМ. ТАКЖЕ
curl_easy_init(3), curl_easy_cleanup(3), curl_easy_reset(3), curl_easy_getinfo(3), curl_multi_setopt(3)
libcurl 7.75.0 July 03, 2020 curl_easy_setopt(3)
[Ссылки]
1. curl_easy_setopt set options for a curl easy handle site:curl.se. |