diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-07-16 14:13:04 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-07-16 14:13:04 +0000 |
| commit | 906215317ac105d6dce718d9faf4b045637f923e (patch) | |
| tree | 1e43095cb3872a252fcadabe340d425f9a71135b /src/TimeA2.cc | |
| parent | 55d98cff0b5e19844ff6a70ee3d8d1b061a0e146 (diff) | |
2010-07-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --conditional-get option. Download file only when the local
file is older than remote file. This function only works with
HTTP(S) downloads only. It does not work if file size is specified
in Metalink. It also ignores Content-Disposition header. If a
control file exists, this option will be ignored. This function
uses If-Modified-Since header to get only newer file
conditionally. When getting modification time of local file, it
uses user supplied filename(see --out option) or filename part in
URI if --out is not specified.
* doc/aria2c.1.txt
* src/HttpHeader.cc
* src/HttpHeader.h
* src/HttpRequest.cc
* src/HttpRequest.h
* src/HttpRequestCommand.cc
* src/HttpResponse.cc
* src/HttpResponseCommand.cc
* src/OptionHandlerFactory.cc
* src/TimeA2.cc
* src/TimeA2.h
* src/prefs.cc
* src/prefs.h
* src/usage_text.h
* test/HttpResponseTest.cc
* test/TimeTest.cc
Diffstat (limited to 'src/TimeA2.cc')
| -rw-r--r-- | src/TimeA2.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/TimeA2.cc b/src/TimeA2.cc index 33a6f551..9733375b 100644 --- a/src/TimeA2.cc +++ b/src/TimeA2.cc @@ -172,6 +172,15 @@ bool Time::bad() const return !good_; } +std::string Time::toHTTPDate() const +{ + char buf[32]; + time_t t = getTime(); + struct tm* tms = gmtime(&t); // returned struct is statically allocated. + size_t r = strftime(buf, sizeof(buf), "%a, %d %b %Y %H:%M:%S GMT", tms); + return std::string(&buf[0], &buf[r]); +} + Time Time::parse(const std::string& datetime, const std::string& format) { struct tm tm; |
