diff options
author | Vincent Bernat <bernat@luffy.cx> | 2010-04-21 14:48:26 +0200 |
---|---|---|
committer | Patrick McHardy <kaber@trash.net> | 2010-04-21 14:48:26 +0200 |
commit | ada4ff6155a02b0aed8400e46f34e72c91e36277 (patch) | |
tree | 9e21158027fe01382c1b340ff39fa397898f85e0 /extensions/libxt_iprange.c | |
parent | 9f27e6b6f8638bde93e9901e999287ad5118f17c (diff) |
iprange: fix xt_iprange v0 parsing
iprange_parse() was incomplete and did not include parsed ranges into
ipt_iprange_info structure resulting in always adding range
0.0.0.0-0.0.0.0 in the kernel.
Moreover, when using --dst-range, error messages may display
--src-range instead. Fix this too.
Signed-off-by: Vincent Bernat <bernat@luffy.cx>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Diffstat (limited to 'extensions/libxt_iprange.c')
-rw-r--r-- | extensions/libxt_iprange.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/extensions/libxt_iprange.c b/extensions/libxt_iprange.c index b28a635a..55a2f84b 100644 --- a/extensions/libxt_iprange.c +++ b/extensions/libxt_iprange.c @@ -108,7 +108,8 @@ static int iprange_parse(int c, char **argv, int invert, unsigned int *flags, if (invert) info->flags |= IPRANGE_SRC_INV; iprange_parse_range(optarg, range, NFPROTO_IPV4, "--src-range"); - + info->src.min_ip = range[0].ip; + info->src.max_ip = range[1].ip; break; case '2': @@ -122,8 +123,9 @@ static int iprange_parse(int c, char **argv, int invert, unsigned int *flags, if (invert) info->flags |= IPRANGE_DST_INV; - iprange_parse_range(optarg, range, NFPROTO_IPV4, "--src-range"); - + iprange_parse_range(optarg, range, NFPROTO_IPV4, "--dst-range"); + info->dst.min_ip = range[0].ip; + info->dst.max_ip = range[1].ip; break; default: |