From: Guenter Knauf Date: Sun, 14 Apr 2013 02:36:23 +0000 (+0000) Subject: Decouple mod_lua max regex matches from AP_MAX_REG_MATCH. X-Git-Tag: 2.5.0-alpha~5588 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=97e8153a9c8f3e9ba145fc3f23e9dca3a9b46db4;p=apache Decouple mod_lua max regex matches from AP_MAX_REG_MATCH. Bumped the default to 25 matches; this default can be overwritten with a CLFAGS define. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1467718 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/lua/lua_request.c b/modules/lua/lua_request.c index 55175a1bf7..4a26defae1 100644 --- a/modules/lua/lua_request.c +++ b/modules/lua/lua_request.c @@ -25,6 +25,10 @@ APLOG_USE_MODULE(lua); #define POST_MAX_VARS 500 +#ifndef MODLUA_MAX_REG_MATCH +#define MODLUA_MAX_REG_MATCH 25 +#endif + typedef char *(*req_field_string_f) (request_rec * r); typedef int (*req_field_int_f) (request_rec * r); typedef apr_table_t *(*req_field_apr_table_f) (request_rec * r); @@ -898,7 +902,7 @@ static int lua_ap_regex(lua_State *L) *source; char *err; ap_regex_t regex; - ap_regmatch_t matches[AP_MAX_REG_MATCH+1]; + ap_regmatch_t matches[MODLUA_MAX_REG_MATCH+1]; luaL_checktype(L, 1, LUA_TUSERDATA); luaL_checktype(L, 2, LUA_TSTRING); @@ -917,7 +921,7 @@ static int lua_ap_regex(lua_State *L) return 2; } - rv = ap_regexec(®ex, source, AP_MAX_REG_MATCH, matches, 0); + rv = ap_regexec(®ex, source, MODLUA_MAX_REG_MATCH, matches, 0); if (rv == AP_REG_NOMATCH) { lua_pushboolean(L, 0); return 1;