mirror of
https://github.com/curl/curl.git
synced 2026-05-03 17:27:54 +03:00
Some CURLOPT constants defined in the curl public headers were initially enums (= ints), or macros with bare numeric values. Recent curl releases upgraded them to `long` constants, to make them pass correctly to `curl_easy_setop()` by default, i.e. without requiring a `(long)` cast. This patch drops such casts from the examples embedded in the docs. At the same time it documents which curl release made them `long` types, to keep them useful when working with previous libcurl versions. Also: - drop a `(long)` cast that was never necessary. - CURLOPT_ALTSVC_CTRL.md: bump local copy of macros to long. - test1119: make it ignore symbols ending with an underscore, to skip wildcard, e.g. `**CURLAUTH_***`. Closes #18130
1.7 KiB
1.7 KiB
| c | SPDX-License-Identifier | Title | Section | Source | See-also | Protocol | Added-in | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. | curl | CURLOPT_TIMEVALUE_LARGE | 3 | libcurl |
|
|
7.59.0 |
NAME
CURLOPT_TIMEVALUE_LARGE - time value for conditional
SYNOPSIS
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TIMEVALUE_LARGE,
curl_off_t val);
DESCRIPTION
Pass a curl_off_t val as parameter. This should be the time counted as seconds since 1 Jan 1970, and the time is used in a condition as specified with CURLOPT_TIMECONDITION(3).
The difference between this option and CURLOPT_TIMEVALUE(3) is the type of the argument. On systems where 'long' is only 32 bits wide, this option has to be used to set dates beyond the year 2038.
DEFAULT
0
%PROTOCOLS%
EXAMPLE
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
/* January 1, 2020 is 1577833200 */
curl_easy_setopt(curl, CURLOPT_TIMEVALUE_LARGE, (curl_off_t)1577833200);
/* If-Modified-Since the above time stamp */
curl_easy_setopt(curl, CURLOPT_TIMECONDITION, CURL_TIMECOND_IFMODSINCE);
/* Perform the request */
curl_easy_perform(curl);
}
}
HISTORY
CURL_TIMECOND_* enums became long types in 8.13.0, prior to this version
a long cast was necessary when passed to curl_easy_setopt(3).
%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).