diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2010-03-21 03:46:03 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2010-03-21 03:46:03 +0000 |
commit | 927d47528fbd27c1374c8e88d3efc0f1ed706bd6 (patch) | |
tree | 82b5b46f58d3bf0a3482c9ceadedd93fecaa0752 /contrib/package/uhttpd/src/uhttpd-file.c | |
parent | 23052d8f013188302dd9faee47f6911e4ed0e1e1 (diff) |
uhttpd: add "Connection: close" headers, mandatory according to HTTP/1.1 spec
Diffstat (limited to 'contrib/package/uhttpd/src/uhttpd-file.c')
-rw-r--r-- | contrib/package/uhttpd/src/uhttpd-file.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/contrib/package/uhttpd/src/uhttpd-file.c b/contrib/package/uhttpd/src/uhttpd-file.c index f0379bccc..7ce5e3978 100644 --- a/contrib/package/uhttpd/src/uhttpd-file.c +++ b/contrib/package/uhttpd/src/uhttpd-file.c @@ -101,6 +101,8 @@ static char * uh_file_header_lookup(struct http_request *req, const char *name) static void uh_file_response_ok_hdrs(struct client *cl, struct http_request *req, struct stat *s) { + uh_http_sendf(cl, NULL, "Connection: close\r\n"); + if( s ) { uh_http_sendf(cl, NULL, "ETag: %s\r\n", uh_file_mktag(s)); @@ -124,8 +126,9 @@ static void uh_file_response_304(struct client *cl, struct http_request *req, st static void uh_file_response_412(struct client *cl, struct http_request *req) { - uh_http_sendf(cl, NULL, "HTTP/%.1f 412 Precondition Failed\r\n", - req->version); + uh_http_sendf(cl, NULL, + "HTTP/%.1f 412 Precondition Failed\r\n" + "Connection: close\r\n", req->version); } static int uh_file_if_match(struct client *cl, struct http_request *req, struct stat *s) |