mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-03-02 01:20:49 +00:00
BUG: vars: Fix 'set-var' converter because of a typo
The 'set-var' converter uses function smp_conv_store (vars.c). In this function, we should use the first argument (index 0) to retrieve the variable name and its scope. But because of a typo, we get the scope of the second argument (index 1). In this case, there is no second argument. So the scope used was always 0 (SCOPE_SESS), always setting the variable in the session scope. So, due to this bug, this rules tcp-request content accept if { src,set-var(txn.foo) -m found } always set the variable 'sess.foo' instead of 'txn.foo'.
This commit is contained in:
parent
e5a60688a4
commit
0099a8ca9d
@ -379,7 +379,7 @@ static inline int sample_store_stream(const char *name, enum vars_scope scope, s
|
||||
/* Returns 0 if fails, else returns 1. */
|
||||
static int smp_conv_store(const struct arg *args, struct sample *smp, void *private)
|
||||
{
|
||||
return sample_store_stream(args[0].data.var.name, args[1].data.var.scope, smp);
|
||||
return sample_store_stream(args[0].data.var.name, args[0].data.var.scope, smp);
|
||||
}
|
||||
|
||||
/* This fucntions check an argument entry and fill it with a variable
|
||||
|
Loading…
Reference in New Issue
Block a user