mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-24 23:31:40 +02:00
CLEANUP: sample: rename sample_conv_var2smp() to *_sint
This one only handles integers, contrary to its sibling with the suffix _str that only handles strings. Let's rename it and uninline it since it may well be used from outside.
This commit is contained in:
parent
80527bcb9d
commit
d9be599529
@ -40,6 +40,7 @@ struct sample *sample_process(struct proxy *px, struct session *sess,
|
|||||||
struct sample *sample_fetch_as_type(struct proxy *px, struct session *sess,
|
struct sample *sample_fetch_as_type(struct proxy *px, struct session *sess,
|
||||||
struct stream *strm, unsigned int opt,
|
struct stream *strm, unsigned int opt,
|
||||||
struct sample_expr *expr, int smp_type);
|
struct sample_expr *expr, int smp_type);
|
||||||
|
int sample_conv_var2smp_sint(const struct arg *arg, struct sample *smp);
|
||||||
void release_sample_expr(struct sample_expr *expr);
|
void release_sample_expr(struct sample_expr *expr);
|
||||||
void sample_register_fetches(struct sample_fetch_kw_list *psl);
|
void sample_register_fetches(struct sample_fetch_kw_list *psl);
|
||||||
void sample_register_convs(struct sample_conv_kw_list *psl);
|
void sample_register_convs(struct sample_conv_kw_list *psl);
|
||||||
|
18
src/sample.c
18
src/sample.c
@ -2988,7 +2988,7 @@ static int check_operator(struct arg *args, struct sample_conv *conv,
|
|||||||
*
|
*
|
||||||
* This function returns 0 if an error occurs, otherwise it returns 1.
|
* This function returns 0 if an error occurs, otherwise it returns 1.
|
||||||
*/
|
*/
|
||||||
static inline int sample_conv_var2smp(const struct arg *arg, struct sample *smp)
|
int sample_conv_var2smp_sint(const struct arg *arg, struct sample *smp)
|
||||||
{
|
{
|
||||||
switch (arg->type) {
|
switch (arg->type) {
|
||||||
case ARGT_SINT:
|
case ARGT_SINT:
|
||||||
@ -3025,7 +3025,7 @@ static int sample_conv_binary_and(const struct arg *arg_p, struct sample *smp, v
|
|||||||
struct sample tmp;
|
struct sample tmp;
|
||||||
|
|
||||||
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
||||||
if (!sample_conv_var2smp(arg_p, &tmp))
|
if (!sample_conv_var2smp_sint(arg_p, &tmp))
|
||||||
return 0;
|
return 0;
|
||||||
smp->data.u.sint &= tmp.data.u.sint;
|
smp->data.u.sint &= tmp.data.u.sint;
|
||||||
return 1;
|
return 1;
|
||||||
@ -3039,7 +3039,7 @@ static int sample_conv_binary_or(const struct arg *arg_p, struct sample *smp, vo
|
|||||||
struct sample tmp;
|
struct sample tmp;
|
||||||
|
|
||||||
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
||||||
if (!sample_conv_var2smp(arg_p, &tmp))
|
if (!sample_conv_var2smp_sint(arg_p, &tmp))
|
||||||
return 0;
|
return 0;
|
||||||
smp->data.u.sint |= tmp.data.u.sint;
|
smp->data.u.sint |= tmp.data.u.sint;
|
||||||
return 1;
|
return 1;
|
||||||
@ -3053,7 +3053,7 @@ static int sample_conv_binary_xor(const struct arg *arg_p, struct sample *smp, v
|
|||||||
struct sample tmp;
|
struct sample tmp;
|
||||||
|
|
||||||
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
||||||
if (!sample_conv_var2smp(arg_p, &tmp))
|
if (!sample_conv_var2smp_sint(arg_p, &tmp))
|
||||||
return 0;
|
return 0;
|
||||||
smp->data.u.sint ^= tmp.data.u.sint;
|
smp->data.u.sint ^= tmp.data.u.sint;
|
||||||
return 1;
|
return 1;
|
||||||
@ -3093,7 +3093,7 @@ static int sample_conv_arith_add(const struct arg *arg_p, struct sample *smp, vo
|
|||||||
struct sample tmp;
|
struct sample tmp;
|
||||||
|
|
||||||
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
||||||
if (!sample_conv_var2smp(arg_p, &tmp))
|
if (!sample_conv_var2smp_sint(arg_p, &tmp))
|
||||||
return 0;
|
return 0;
|
||||||
smp->data.u.sint = arith_add(smp->data.u.sint, tmp.data.u.sint);
|
smp->data.u.sint = arith_add(smp->data.u.sint, tmp.data.u.sint);
|
||||||
return 1;
|
return 1;
|
||||||
@ -3108,7 +3108,7 @@ static int sample_conv_arith_sub(const struct arg *arg_p,
|
|||||||
struct sample tmp;
|
struct sample tmp;
|
||||||
|
|
||||||
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
||||||
if (!sample_conv_var2smp(arg_p, &tmp))
|
if (!sample_conv_var2smp_sint(arg_p, &tmp))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* We cannot represent -LLONG_MIN because abs(LLONG_MIN) is greater
|
/* We cannot represent -LLONG_MIN because abs(LLONG_MIN) is greater
|
||||||
@ -3141,7 +3141,7 @@ static int sample_conv_arith_mul(const struct arg *arg_p,
|
|||||||
long long int c;
|
long long int c;
|
||||||
|
|
||||||
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
||||||
if (!sample_conv_var2smp(arg_p, &tmp))
|
if (!sample_conv_var2smp_sint(arg_p, &tmp))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* prevent divide by 0 during the check */
|
/* prevent divide by 0 during the check */
|
||||||
@ -3185,7 +3185,7 @@ static int sample_conv_arith_div(const struct arg *arg_p,
|
|||||||
struct sample tmp;
|
struct sample tmp;
|
||||||
|
|
||||||
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
||||||
if (!sample_conv_var2smp(arg_p, &tmp))
|
if (!sample_conv_var2smp_sint(arg_p, &tmp))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (tmp.data.u.sint) {
|
if (tmp.data.u.sint) {
|
||||||
@ -3213,7 +3213,7 @@ static int sample_conv_arith_mod(const struct arg *arg_p,
|
|||||||
struct sample tmp;
|
struct sample tmp;
|
||||||
|
|
||||||
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
smp_set_owner(&tmp, smp->px, smp->sess, smp->strm, smp->opt);
|
||||||
if (!sample_conv_var2smp(arg_p, &tmp))
|
if (!sample_conv_var2smp_sint(arg_p, &tmp))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (tmp.data.u.sint) {
|
if (tmp.data.u.sint) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user