From: Jozsef Kadlecsik Date: Thu, 16 Jun 2011 16:54:43 +0000 (+0200) Subject: netfilter: ipset: take into account cidr value for the from address when creating... X-Git-Tag: v3.1-rc1~316^2~441 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f3dfd1538f26f1ecf86daaf3d0c321d87e5de041;p=platform%2Fkernel%2Flinux-stable.git netfilter: ipset: take into account cidr value for the from address when creating the set When creating a set from a range expressed as a network like 10.1.1.172/29, the from address was taken as the IP address part and not masked with the netmask from the cidr. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy --- diff --git a/net/netfilter/ipset/ip_set_bitmap_ip.c b/net/netfilter/ipset/ip_set_bitmap_ip.c index 3b5920b..4932311 100644 --- a/net/netfilter/ipset/ip_set_bitmap_ip.c +++ b/net/netfilter/ipset/ip_set_bitmap_ip.c @@ -478,6 +478,7 @@ bitmap_ip_create(struct ip_set *set, struct nlattr *tb[], u32 flags) if (cidr >= 32) return -IPSET_ERR_INVALID_CIDR; + first_ip &= ip_set_hostmask(cidr); last_ip = first_ip | ~ip_set_hostmask(cidr); } else return -IPSET_ERR_PROTOCOL;