# HG changeset patch # User Matthew Wild # Date 1335453068 -3600 # Node ID 9c15fa5192d3b55d98deeea997c156a600a39137 # Parent 4fc99f1b75702150ab683a39d58dd7a464907bc6 net.http.server: Fire http-error 400 if request fails sanity checks diff -r 4fc99f1b7570 -r 9c15fa5192d3 net/http/server.lua --- a/net/http/server.lua Thu Apr 26 20:07:13 2012 +0500 +++ b/net/http/server.lua Thu Apr 26 16:11:08 2012 +0100 @@ -170,10 +170,17 @@ }; conn._http_open_response = response; + local err; if not request.headers.host then + err = "No 'Host' header"; + elseif not request.path then + err = "Invalid path"; + end + + if err then response.status_code = 400; response.headers.content_type = "text/html"; - response:send(events.fire_event("http-error", { code = 400, message = "No 'Host' header" })); + response:send(events.fire_event("http-error", { code = 400, message = err })); else local host = request.headers.host; if host then