From: Simon Horman Date: Fri, 12 Aug 2011 23:03:49 +0000 (+0900) Subject: [MEDIUM] Correct ipmask() logic X-Git-Tag: v1.5-dev8~152 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d281eedc07d43b9d1b199aa4b8d6260a204f001e;p=thirdparty%2Fhaproxy.git [MEDIUM] Correct ipmask() logic The netmask applied to table entries as configured using ipmask() is stored in arg_p->data.ip not arg_i (which will be 1 if the netmask is set). --- diff --git a/src/pattern.c b/src/pattern.c index e705f00c31..59ff010dd1 100644 --- a/src/pattern.c +++ b/src/pattern.c @@ -556,7 +556,7 @@ static int pattern_conv_str2upper(const struct pattern_arg *arg_p, int arg_i, un /* takes the netmask in arg_i */ static int pattern_conv_ipmask(const struct pattern_arg *arg_p, int arg_i, union pattern_data *data) { - data->ip.s_addr &= arg_i; + data->ip.s_addr &= arg_p->data.ip.s_addr; return 1; }