threads / patch / 34912

v2http-backend: provide Allow header for 405

Subject: [PATCH v2] http-backend: provide Allow header for 405

## tl;dr

3 messages between Sep 12, 2013 and Sep 12, 2013. Diffs are folded; open one to read it.

replies: 2people: 3as markdown or json

brian m. carlson· Sep 12, 2013, 00:30 UTC · lore
The HTTP 1.1 standard requires an Allow header for 405 Method Not Allowed:
  The response MUST include an Allow header containing a list of valid methods
  for the requested resource.
So provide such a header when we return a 405 to the user agent.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 http-backend.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
Show changes to http-backend.c +4 −2
diff --git a/http-backend.c b/http-backend.c
index 0324417..8c464bd 100644
--- a/http-backend.c
+++ b/http-backend.c
@@ -594,9 +594,11 @@ int main(int argc, char **argv)
 
 			if (strcmp(method, c->method)) {
 				const char *proto = getenv("SERVER_PROTOCOL");
-				if (proto && !strcmp(proto, "HTTP/1.1"))
+				if (proto && !strcmp(proto, "HTTP/1.1")) {
 					http_status(405, "Method Not Allowed");
-				else
+					hdr_str("Allow", !strcmp(c->method, "GET") ?
+						"GET, HEAD" : c->method);
+				} else
 					http_status(400, "Bad Request");
 				hdr_nocache();
 				end_headers();
-- 
1.8.4.rc3
Jonathan Nieder· Sep 12, 2013, 00:33 UTC · re: brian m. carlson · lore

Re: [PATCH v2] http-backend: provide Allow header for 405

brian m. carlson wrote:
> Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Thanks again for noticing.
For what it's worth,
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Jeff King· Sep 12, 2013, 04:46 UTC · re: brian m. carlson · lore

Re: [PATCH v2] http-backend: provide Allow header for 405

On Thu, Sep 12, 2013 at 12:30:01AM +0000, brian m. carlson wrote:
Show 8 quoted lines
> The HTTP 1.1 standard requires an Allow header for 405 Method Not Allowed:
> 
>   The response MUST include an Allow header containing a list of valid methods
>   for the requested resource.
> 
> So provide such a header when we return a 405 to the user agent.
> 
> Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Thanks, this looks good to me.
-Peff

← back to recent threads