From 8767ad99884f2ecdf74e8ffdf545863c284fd56c Mon Sep 17 00:00:00 2001 From: Daniel Gruno Date: Thu, 20 Dec 2012 21:52:03 +0000 Subject: [PATCH] mod_lua: Fix multipart post parsing, so it doesn't include random bytes at the end. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1424723 13f79535-47bb-0310-9956-ffa450edef68 --- modules/lua/lua_request.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/lua/lua_request.c b/modules/lua/lua_request.c index fdf689cf91..a6647629af 100644 --- a/modules/lua/lua_request.c +++ b/modules/lua/lua_request.c @@ -19,6 +19,7 @@ #include "util_script.h" #include "lua_apr.h" #include "scoreboard.h" +#include "lua_dbd.h" APLOG_USE_MODULE(lua); #define POST_MAX_VARS 500 @@ -246,8 +247,8 @@ static int req_parsebody(lua_State *L) if (!crlf) break; key = (char *) apr_pcalloc(r->pool, 256); filename = (char *) apr_pcalloc(r->pool, 256); - buffer = (char *) apr_palloc(r->pool, end - crlf); vlen = end - crlf - 8; + buffer = (char *) apr_pcalloc(r->pool, vlen+1); memcpy(buffer, crlf + 4, vlen); sscanf(start + len + 2, "Content-Disposition: form-data; name=\"%255[^\"]\"; filename=\"%255[^\"]\"", -- 2.40.0