From fc62af2024baf14005057460d028d97f4147767a Mon Sep 17 00:00:00 2001 From: Matthew Wild Date: Sat, 28 Aug 2010 23:41:09 +0100 Subject: net.httpserver: Join multiple headers with the same name as per RFC (thanks darkhippo) --- net/httpserver.lua | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/net/httpserver.lua b/net/httpserver.lua index 59ddbb12..55758147 100644 --- a/net/httpserver.lua +++ b/net/httpserver.lua @@ -152,7 +152,12 @@ local function request_reader(request, data, startpos) startpos = (startpos or 1) + #line + 2; local k, v = line:match("(%S+): (.+)"); if k and v then - headers[k:lower()] = v; + k = k:lower(); + if headers[k] then + headers[k] = headers[k]..", "..v; + else + headers[k] = v; + end --log("debug", "Header: '"..k:lower().."' = '"..v.."'"); elseif #line == 0 then headers_complete = true; -- cgit v1.2.3