diff options
author | Daniel Stenberg <daniel@haxx.se> | 2018-01-25 23:05:24 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2018-01-30 08:29:59 +0100 |
commit | 8f69a9f28abf98a10a50b3bae5ba319660de82ee (patch) | |
tree | 2b0eea6d076cd97763f0ce5dde7feed742cfe142 /docs/libcurl/opts/CURLINFO_FILETIME_T.3 | |
parent | 9caa3e248da91dc8964328b5b50491ba05df7bd4 (diff) |
time: support > year 2038 time stamps for system with 32bit long
... with the introduction of CURLOPT_TIMEVALUE_LARGE and
CURLINFO_FILETIME_T.
Fixes #2238
Closes #2264
Diffstat (limited to 'docs/libcurl/opts/CURLINFO_FILETIME_T.3')
-rw-r--r-- | docs/libcurl/opts/CURLINFO_FILETIME_T.3 | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/docs/libcurl/opts/CURLINFO_FILETIME_T.3 b/docs/libcurl/opts/CURLINFO_FILETIME_T.3 new file mode 100644 index 000000000..d8853ccd2 --- /dev/null +++ b/docs/libcurl/opts/CURLINFO_FILETIME_T.3 @@ -0,0 +1,71 @@ +.\" ************************************************************************** +.\" * _ _ ____ _ +.\" * Project ___| | | | _ \| | +.\" * / __| | | | |_) | | +.\" * | (__| |_| | _ <| |___ +.\" * \___|\___/|_| \_\_____| +.\" * +.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al. +.\" * +.\" * This software is licensed as described in the file COPYING, which +.\" * you should have received as part of this distribution. The terms +.\" * are also available at https://curl.haxx.se/docs/copyright.html. +.\" * +.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell +.\" * copies of the Software, and permit persons to whom the Software is +.\" * furnished to do so, under the terms of the COPYING file. +.\" * +.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY +.\" * KIND, either express or implied. +.\" * +.\" ************************************************************************** +.\" +.TH CURLINFO_FILETIME 3 "25 Jan 2018" "libcurl 7.59.0" "curl_easy_getinfo options" +.SH NAME +CURLINFO_FILETIME_T \- get the remote time of the retrieved document +.SH SYNOPSIS +#include <curl/curl.h> + +CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_FILETIME_T, curl_off_t *timep); +.SH DESCRIPTION +Pass a pointer to a curl_off_t to receive the remote time of the retrieved +document (in number of seconds since 1 jan 1970 in the GMT/UTC time zone). If +you get -1, it can be because of many reasons (it might be unknown, the server +might hide it or the server doesn't support the command that tells document +time etc) and the time of the document is unknown. + +You must ask libcurl to collect this information before the transfer is made, +by using the \fICURLOPT_FILETIME(3)\fP option to \fIcurl_easy_setopt(3)\fP or +you will unconditionally get a -1 back. + +This option is an alternative to \fICURLINFO_FILETIME(3)\fP to allow systems +with 32 bit long variables to extract dates outside of the 32bit timestamp +range. +.SH PROTOCOLS +HTTP(S), FTP(S), SFTP +.SH EXAMPLE +.nf +curl = curl_easy_init(); +if(curl) { + curl_easy_setopt(curl, CURLOPT_URL, url); + /* Ask for filetime */ + curl_easy_setopt(curl, CURLOPT_FILETIME, 1L); + res = curl_easy_perform(curl); + if(CURLE_OK == res) { + curl_off_t filetime; + res = curl_easy_getinfo(curl, CURLINFO_FILETIME_T, &filetime); + if((CURLE_OK == res) && (filetime >= 0)) { + time_t file_time = (time_t)filetime; + printf("filetime %s: %s", filename, ctime(&file_time)); + } + } + /* always cleanup */ + curl_easy_cleanup(curl); +} +.fi +.SH AVAILABILITY +Added in 7.59.0 +.SH RETURN VALUE +Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. +.SH "SEE ALSO" +.BR curl_easy_getinfo "(3), " curl_easy_setopt "(3), " |