aboutsummaryrefslogtreecommitdiff
path: root/lib/libfetch
diff options
context:
space:
mode:
authorBryan Drewery <bdrewery@FreeBSD.org>2014-03-11 13:47:11 +0000
committerBryan Drewery <bdrewery@FreeBSD.org>2014-03-11 13:47:11 +0000
commitb36853caf148377580a0a181357f5107d9d71355 (patch)
tree0ce3c12676d03889bf5f8e00f5b808a7b11fbdd1 /lib/libfetch
parent079f7ef839a23f8f493e9ba4c1b7198e7cc83558 (diff)
Notes
Diffstat (limited to 'lib/libfetch')
-rw-r--r--lib/libfetch/http.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/libfetch/http.c b/lib/libfetch/http.c
index b2feedbcd0bf..cbbb8a8d351f 100644
--- a/lib/libfetch/http.c
+++ b/lib/libfetch/http.c
@@ -876,6 +876,12 @@ http_parse_mtime(const char *p, time_t *mtime)
strncpy(locale, setlocale(LC_TIME, NULL), sizeof(locale));
setlocale(LC_TIME, "C");
r = strptime(p, "%a, %d %b %Y %H:%M:%S GMT", &tm);
+ /*
+ * Some proxies use UTC in response, but it should still be
+ * parsed. RFC2616 states GMT and UTC are exactly equal for HTTP.
+ */
+ if (r == NULL)
+ r = strptime(p, "%a, %d %b %Y %H:%M:%S UTC", &tm);
/* XXX should add support for date-2 and date-3 */
setlocale(LC_TIME, locale);
if (r == NULL)