| .\" ************************************************************************** |
| .\" * _ _ ____ _ |
| .\" * 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.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 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options" |
| |
| .SH NAME |
| CURLINFO_FILETIME \- get the remote time of the retrieved document |
| .SH SYNOPSIS |
| #include <curl/curl.h> |
| |
| CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_FILETIME, long *timep); |
| .SH DESCRIPTION |
| Pass a pointer to a long 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 tell 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. |
| |
| Consider using \fICURLINFO_FILETIME_T(3)\fP to be able to extract dates beyond |
| the year 2038 on systems using 32 bit longs. |
| .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) { |
| res = curl_easy_getinfo(curl, CURLINFO_FILETIME, &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.5 |
| .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), " |