mirror of
https://github.com/haproxy/haproxy.git
synced 2026-03-23 10:53:04 -04:00
BUG/MINOR: lua: Segfaults with wrong usage of types.
Patrick reported that this simple configuration made haproxy segfaults:
global
lua-load /tmp/haproxy.lua
frontend f1
mode http
bind :8000
default_backend b1
http-request lua.foo
backend b1
mode http
server s1 127.0.0.1:8080
with this '/tmp/haproxy.lua' script:
core.register_action("foo", { "http-req" }, function(txn)
txn.sc:ipmask(txn.f:src(), 24, 112)
end)
This is due to missing initialization of the array of arguments
passed to hlua_lua2arg_check() which makes it enter code with
corrupted arguments.
Thanks a lot to Patrick Hemmer for having reported this issue.
Must be backported to 1.8, 1.7 and 1.6.
This commit is contained in:
parent
9db0fedb59
commit
f874a83b57
1 changed files with 2 additions and 2 deletions
|
|
@ -3256,7 +3256,7 @@ __LJMP static int hlua_run_sample_fetch(lua_State *L)
|
|||
{
|
||||
struct hlua_smp *hsmp;
|
||||
struct sample_fetch *f;
|
||||
struct arg args[ARGM_NBARGS + 1];
|
||||
struct arg args[ARGM_NBARGS + 1] = {{0}};
|
||||
int i;
|
||||
struct sample smp;
|
||||
|
||||
|
|
@ -3370,7 +3370,7 @@ __LJMP static int hlua_run_sample_conv(lua_State *L)
|
|||
{
|
||||
struct hlua_smp *hsmp;
|
||||
struct sample_conv *conv;
|
||||
struct arg args[ARGM_NBARGS + 1];
|
||||
struct arg args[ARGM_NBARGS + 1] = {{0}};
|
||||
int i;
|
||||
struct sample smp;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue