]> git.ipfire.org Git - thirdparty/iptables.git/commitdiff
iprange: fix xt_iprange v0 parsing
authorVincent Bernat <bernat@luffy.cx>
Wed, 21 Apr 2010 12:48:26 +0000 (14:48 +0200)
committerPatrick McHardy <kaber@trash.net>
Wed, 21 Apr 2010 12:48:26 +0000 (14:48 +0200)
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>
extensions/libxt_iprange.c

index b28a635a8c443efe67fba868ae26262c93ee91bd..55a2f84b0a8ca45e1d306a3e98c9e2023a09879d 100644 (file)
@@ -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: