From f93d09b5caaf62fe8de0504f3eb1bcd1c643aa19 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Tue, 10 Sep 2013 11:57:34 +0100 Subject: [PATCH] now Date header will be formatted in GMT as requiered by HTTP protocol --- src/http/worker/add_common_header.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/http/worker/add_common_header.c b/src/http/worker/add_common_header.c index 981c4da..014c815 100644 --- a/src/http/worker/add_common_header.c +++ b/src/http/worker/add_common_header.c @@ -32,6 +32,13 @@ #include "utils/memory.h" #include "hash.h" +static const char *DAY_NAMES[] = { + "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }; +static const char *MONTH_NAMES[] = { + "Jan", "Feb", "Mar", "Apr", "May", "Jun", + "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; + + void httpWorkerAddCommonHeader(HttpMessage request, HttpMessage response) { @@ -63,8 +70,11 @@ httpWorkerAddCommonHeader(HttpMessage request, HttpMessage response) } t = time(NULL); - tmp = localtime(&t); - nbuf = strftime(buffer, sizeof(buffer), "%a, %d %b %Y %T %Z", tmp); + tmp = gmtime(&t); + nbuf = strftime(buffer, sizeof(buffer), "---, %d --- %Y %T GMT", tmp); + memcpy(buffer, DAY_NAMES[tmp->tm_wday], 3); + memcpy(buffer+8, MONTH_NAMES[tmp->tm_mon], 3); + hashAdd(response->header, new(HttpHeader, CSTRA("Date"), buffer, nbuf)); }