From: Eric Covener Date: Mon, 2 Sep 2013 11:43:53 +0000 (+0000) Subject: Return a 500 error instead of DECLINED when LuaHook* script does not X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2c214cd82b4f347f34aedcc65e2da1b4dfa1857c;p=thirdparty%2Fapache%2Fhttpd.git Return a 500 error instead of DECLINED when LuaHook* script does not return a numeric value. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1519398 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index d9a0d91d25c..46e4fe86c76 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,9 @@ -*- coding: utf-8 -*- Changes with Apache 2.5.0 + *) mod_lua: Return a 500 error if a LuaHook* script doesn't return a + numeric return code. [Eric Covener] + *) Add experimental cmake-based build system for Windows. [Jeff Trawick, Tom Donovan] diff --git a/modules/lua/mod_lua.c b/modules/lua/mod_lua.c index 4d02a91a3d2..4d5d7624272 100644 --- a/modules/lua/mod_lua.c +++ b/modules/lua/mod_lua.c @@ -664,6 +664,11 @@ static int lua_request_rec_hook_harness(request_rec *r, const char *name, int ap ap_log_rerror(APLOG_MARK, APLOG_TRACE4, 0, r, "Lua hook %s:%s for phase %s returned %d", hook_spec->file_name, hook_spec->function_name, name, rc); } + else { + ap_log_rerror(APLOG_MARK, APLOG_CRIT, 0, r, "Lua hook %s:%s for phase %s did not return a numeric value", + hook_spec->file_name, hook_spec->function_name, name); + return HTTP_INTERNAL_SERVER_ERROR; + } if (rc != DECLINED) { ap_lua_release_state(L, spec, r); return rc;