From 27dd165e348c53242790e77130f671e3ed24453b Mon Sep 17 00:00:00 2001 From: Changli Gao Date: Mon, 2 Aug 2010 17:35:49 +0200 Subject: [PATCH] --- yaml --- r: 203987 b: refs/heads/master c: 2452a99dc0496a90abd0090c280671370c0f3e1c h: refs/heads/master i: 203985: e1d9c9c6a540d55fc1df42ae9e370bc107e9119a 203983: f16171d544022c7db7c66937ac71b9793b5271b3 v: v3 --- [refs] | 2 +- trunk/net/ipv4/netfilter/nf_nat_proto_common.c | 4 ++-- trunk/net/ipv4/netfilter/nf_nat_proto_gre.c | 4 ++-- trunk/net/ipv4/netfilter/nf_nat_proto_icmp.c | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index cda006c1d001..ac07871fde74 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f43dc98b3be36551143e3bbaf1bb3067835c24f4 +refs/heads/master: 2452a99dc0496a90abd0090c280671370c0f3e1c diff --git a/trunk/net/ipv4/netfilter/nf_nat_proto_common.c b/trunk/net/ipv4/netfilter/nf_nat_proto_common.c index 2844a0383a11..3e61faf23a9a 100644 --- a/trunk/net/ipv4/netfilter/nf_nat_proto_common.c +++ b/trunk/net/ipv4/netfilter/nf_nat_proto_common.c @@ -81,9 +81,9 @@ void nf_nat_proto_unique_tuple(struct nf_conntrack_tuple *tuple, else off = *rover; - for (i = 0; i < range_size; i++, off++) { + for (i = 0; ; ++off) { *portptr = htons(min + off % range_size); - if (nf_nat_used_tuple(tuple, ct)) + if (++i != range_size && nf_nat_used_tuple(tuple, ct)) continue; if (!(range->flags & IP_NAT_RANGE_PROTO_RANDOM)) *rover = off; diff --git a/trunk/net/ipv4/netfilter/nf_nat_proto_gre.c b/trunk/net/ipv4/netfilter/nf_nat_proto_gre.c index 89933ab6f63e..bc8d83a31c73 100644 --- a/trunk/net/ipv4/netfilter/nf_nat_proto_gre.c +++ b/trunk/net/ipv4/netfilter/nf_nat_proto_gre.c @@ -68,9 +68,9 @@ gre_unique_tuple(struct nf_conntrack_tuple *tuple, pr_debug("min = %u, range_size = %u\n", min, range_size); - for (i = 0; i < range_size; i++, key++) { + for (i = 0; ; ++key) { *keyptr = htons(min + key % range_size); - if (!nf_nat_used_tuple(tuple, ct)) + if (++i == range_size || !nf_nat_used_tuple(tuple, ct)) return; } diff --git a/trunk/net/ipv4/netfilter/nf_nat_proto_icmp.c b/trunk/net/ipv4/netfilter/nf_nat_proto_icmp.c index 97003fe312e3..5744c3ec847c 100644 --- a/trunk/net/ipv4/netfilter/nf_nat_proto_icmp.c +++ b/trunk/net/ipv4/netfilter/nf_nat_proto_icmp.c @@ -42,10 +42,10 @@ icmp_unique_tuple(struct nf_conntrack_tuple *tuple, if (!(range->flags & IP_NAT_RANGE_PROTO_SPECIFIED)) range_size = 0xFFFF; - for (i = 0; i < range_size; i++, id++) { + for (i = 0; ; ++id) { tuple->src.u.icmp.id = htons(ntohs(range->min.icmp.id) + (id % range_size)); - if (!nf_nat_used_tuple(tuple, ct)) + if (++i == range_size || !nf_nat_used_tuple(tuple, ct)) return; } return;