From: Thierry FOURNIER Date: Wed, 19 Aug 2015 08:42:42 +0000 (+0200) Subject: BUG/MEDIUM: lua: bad error processing X-Git-Tag: v1.6-dev4~63 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c7d7607351346f4f7c85964281013cf0cfcefc8e;p=thirdparty%2Fhaproxy.git BUG/MEDIUM: lua: bad error processing When the lua actions (http|tcp)-(request|rersponse) fails a yield is returned. this patch fix the behavior and returns a continue. --- diff --git a/src/hlua.c b/src/hlua.c index 83e3058cdf..ac9e631e4f 100644 --- a/src/hlua.c +++ b/src/hlua.c @@ -4284,7 +4284,7 @@ static int hlua_request_act_wrapper(struct hlua_rule *rule, struct proxy *px, send_log(px, LOG_ERR, "Lua action '%s': can't initialize Lua context.", rule->fcn.name); if (!(global.mode & MODE_QUIET) || (global.mode & MODE_VERBOSE)) Alert("Lua action '%s': can't initialize Lua context.\n", rule->fcn.name); - return 0; + return 1; } /* If it is the first run, initialize the data for the call. */ @@ -4294,7 +4294,7 @@ static int hlua_request_act_wrapper(struct hlua_rule *rule, struct proxy *px, send_log(px, LOG_ERR, "Lua function '%s': full stack.", rule->fcn.name); if (!(global.mode & MODE_QUIET) || (global.mode & MODE_VERBOSE)) Alert("Lua function '%s': full stack.\n", rule->fcn.name); - return 0; + return 1; } /* Restore the function in the stack. */ @@ -4305,7 +4305,7 @@ static int hlua_request_act_wrapper(struct hlua_rule *rule, struct proxy *px, send_log(px, LOG_ERR, "Lua function '%s': full stack.", rule->fcn.name); if (!(global.mode & MODE_QUIET) || (global.mode & MODE_VERBOSE)) Alert("Lua function '%s': full stack.\n", rule->fcn.name); - return 0; + return 1; } s->hlua.nargs = 1; @@ -4315,7 +4315,7 @@ static int hlua_request_act_wrapper(struct hlua_rule *rule, struct proxy *px, send_log(px, LOG_ERR, "Lua function '%s': full stack.", rule->fcn.name); if (!(global.mode & MODE_QUIET) || (global.mode & MODE_VERBOSE)) Alert("Lua function '%s': full stack.\n", rule->fcn.name); - return 0; + return 1; } lua_pushstring(s->hlua.T, *arg); s->hlua.nargs++;