diff --git a/modules/lua/lua_request.c b/modules/lua/lua_request.c index 61a14f5..1dc676f 100644 --- a/modules/lua/lua_request.c +++ b/modules/lua/lua_request.c @@ -303,6 +303,7 @@ static int req_parsebody(lua_State *L) if (!crlf) break; key = (char *) apr_pcalloc(r->pool, 256); filename = (char *) apr_pcalloc(r->pool, 256); + if (end - crlf <= 8) break; vlen = end - crlf - 8; buffer = (char *) apr_pcalloc(r->pool, vlen+1); memcpy(buffer, crlf + 4, vlen);