diff options
author | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2013-04-27 15:02:59 -0400 |
---|---|---|
committer | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2013-09-30 15:33:25 -0400 |
commit | 122ebbf24c33ac13a9243248c9b8da0fa4c012bd (patch) | |
tree | 302ca15a593c2711c7443b13b0f6e08a61972fcd | |
parent | 7722e0d1c076d9610f00d79bde8af977157aa23b (diff) |
netfilter: ipset: Don't call ip_nest_end needlessly in the error path
Suggested-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
-rw-r--r-- | net/netfilter/ipset/ip_set_bitmap_gen.h | 2 | ||||
-rw-r--r-- | net/netfilter/ipset/ip_set_hash_gen.h | 2 | ||||
-rw-r--r-- | net/netfilter/ipset/ip_set_list_set.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/net/netfilter/ipset/ip_set_bitmap_gen.h b/net/netfilter/ipset/ip_set_bitmap_gen.h index 25243379b887..f6af97cf8d3e 100644 --- a/net/netfilter/ipset/ip_set_bitmap_gen.h +++ b/net/netfilter/ipset/ip_set_bitmap_gen.h | |||
@@ -228,11 +228,11 @@ mtype_list(const struct ip_set *set, | |||
228 | 228 | ||
229 | nla_put_failure: | 229 | nla_put_failure: |
230 | nla_nest_cancel(skb, nested); | 230 | nla_nest_cancel(skb, nested); |
231 | ipset_nest_end(skb, adt); | ||
232 | if (unlikely(id == first)) { | 231 | if (unlikely(id == first)) { |
233 | cb->args[2] = 0; | 232 | cb->args[2] = 0; |
234 | return -EMSGSIZE; | 233 | return -EMSGSIZE; |
235 | } | 234 | } |
235 | ipset_nest_end(skb, adt); | ||
236 | return 0; | 236 | return 0; |
237 | } | 237 | } |
238 | 238 | ||
diff --git a/net/netfilter/ipset/ip_set_hash_gen.h b/net/netfilter/ipset/ip_set_hash_gen.h index 707bc520d629..7ff20ecbe185 100644 --- a/net/netfilter/ipset/ip_set_hash_gen.h +++ b/net/netfilter/ipset/ip_set_hash_gen.h | |||
@@ -909,13 +909,13 @@ mtype_list(const struct ip_set *set, | |||
909 | 909 | ||
910 | nla_put_failure: | 910 | nla_put_failure: |
911 | nlmsg_trim(skb, incomplete); | 911 | nlmsg_trim(skb, incomplete); |
912 | ipset_nest_end(skb, atd); | ||
913 | if (unlikely(first == cb->args[2])) { | 912 | if (unlikely(first == cb->args[2])) { |
914 | pr_warning("Can't list set %s: one bucket does not fit into " | 913 | pr_warning("Can't list set %s: one bucket does not fit into " |
915 | "a message. Please report it!\n", set->name); | 914 | "a message. Please report it!\n", set->name); |
916 | cb->args[2] = 0; | 915 | cb->args[2] = 0; |
917 | return -EMSGSIZE; | 916 | return -EMSGSIZE; |
918 | } | 917 | } |
918 | ipset_nest_end(skb, atd); | ||
919 | return 0; | 919 | return 0; |
920 | } | 920 | } |
921 | 921 | ||
diff --git a/net/netfilter/ipset/ip_set_list_set.c b/net/netfilter/ipset/ip_set_list_set.c index 979b8c90e422..68299ee15847 100644 --- a/net/netfilter/ipset/ip_set_list_set.c +++ b/net/netfilter/ipset/ip_set_list_set.c | |||
@@ -550,11 +550,11 @@ finish: | |||
550 | 550 | ||
551 | nla_put_failure: | 551 | nla_put_failure: |
552 | nla_nest_cancel(skb, nested); | 552 | nla_nest_cancel(skb, nested); |
553 | ipset_nest_end(skb, atd); | ||
554 | if (unlikely(i == first)) { | 553 | if (unlikely(i == first)) { |
555 | cb->args[2] = 0; | 554 | cb->args[2] = 0; |
556 | return -EMSGSIZE; | 555 | return -EMSGSIZE; |
557 | } | 556 | } |
557 | ipset_nest_end(skb, atd); | ||
558 | return 0; | 558 | return 0; |
559 | } | 559 | } |
560 | 560 | ||