diff options
author | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2017-09-18 21:43:30 +0200 |
---|---|---|
committer | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2017-09-18 21:43:30 +0200 |
commit | ae810f58cbfd08a654877f7f78239526e1caf117 (patch) | |
tree | 8ab7319b66b3a4c2b693b89602bef28e753de887 /kernel/net/netfilter/ipset/ip_set_hash_ipportip.c | |
parent | 7aa278e4c474adfac06ddb35584b31534366628f (diff) |
Fix adding an IPv4 range containing more than 2^31 addresses
Wrong comparison prevented the hash types to add a range with
more than 2^31 addresses but reported as a success.
Fixes bugzilla id #1005, reported by Oleg Serditov and Oliver Ford.
Diffstat (limited to 'kernel/net/netfilter/ipset/ip_set_hash_ipportip.c')
-rw-r--r-- | kernel/net/netfilter/ipset/ip_set_hash_ipportip.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/net/netfilter/ipset/ip_set_hash_ipportip.c b/kernel/net/netfilter/ipset/ip_set_hash_ipportip.c index 6215fb8..a7f4d7a 100644 --- a/kernel/net/netfilter/ipset/ip_set_hash_ipportip.c +++ b/kernel/net/netfilter/ipset/ip_set_hash_ipportip.c @@ -185,7 +185,7 @@ hash_ipportip4_uadt(struct ip_set *set, struct nlattr *tb[], if (retried) ip = ntohl(h->next.ip); - for (; !before(ip_to, ip); ip++) { + for (; ip <= ip_to; ip++) { p = retried && ip == ntohl(h->next.ip) ? ntohs(h->next.port) : port; for (; p <= port_to; p++) { |