summaryrefslogtreecommitdiff
path: root/src/request.c
diff options
context:
space:
mode:
authorJan Kneschke <jan@kneschke.de>2007-04-09 18:55:21 +0000
committerJan Kneschke <jan@kneschke.de>2007-04-09 18:55:21 +0000
commit76e55e958c8418ba7a384584318d2c75a1a0bf81 (patch)
treee0a4119545178fb3ee6836162b9fda50aec55247 /src/request.c
parent54fa094d94e435edcf0ef70403a68f1819be5f58 (diff)
downloadlighttpd-git-76e55e958c8418ba7a384584318d2c75a1a0bf81.tar.gz
strip trailing white-spaces in HTTP-request headers
before we parse them (fixes #1098) git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@1727 152afb58-edef-0310-8abb-c4023f1b3aa9
Diffstat (limited to 'src/request.c')
-rw-r--r--src/request.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/request.c b/src/request.c
index 4d086412..f76252e2 100644
--- a/src/request.c
+++ b/src/request.c
@@ -744,6 +744,13 @@ int http_request_parse(server *srv, connection *con) {
s_len = cur - value;
+ /* strip trailing white-spaces */
+ for (; s_len > 0 &&
+ (value[s_len - 1] == ' ' ||
+ value[s_len - 1] == '\t'); s_len--);
+
+ value[s_len] = '\0';
+
if (s_len > 0) {
int cmp = 0;
if (NULL == (ds = (data_string *)array_get_unused_element(con->request.headers, TYPE_STRING))) {