BUG/MEDIUM: sample: http_date() doesn't provide the right day of the week
Gregor Kovač reported that http_date() did not return the right day of the
week. For example "Sat, 22 Jan 2016 17:43:38 GMT" instead of "Fri, 22 Jan
2016 17:43:38 GMT". Indeed, gmtime() returns a 'struct tm' result, where
tm_wday begins on Sunday, whereas the code assumed it began on Monday.
This patch must be backported to haproxy 1.5 and 1.6.
(cherry picked from commit f78d8967d791064c1148fe4efc07dee28e79d0db)
(cherry picked from commit d63db172aa92ea1895da27d374e5da1b76ce6546)
diff --git a/src/proto_http.c b/src/proto_http.c
index 3af7880..5da0a49 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -11245,7 +11245,7 @@
*/
static int sample_conv_http_date(const struct arg *args, struct sample *smp)
{
- const char day[7][4] = { "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun" };
+ const char day[7][4] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
const char mon[12][4] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
struct chunk *temp;
struct tm *tm;