aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorDmitry Mishin <dim@openvz.org>2006-09-20 15:00:21 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2006-09-22 18:19:51 -0400
commit90d47db4a06f93f7339618b2a4f0cb032ef8d6d5 (patch)
tree5bc69de31502801f3526577775e90225a43a0ff2 /net
parent9123de2c043996050bacf77031cad845f5976f5d (diff)
[NETFILTER]: x_tables: small check_entry & module_refcount cleanup
While standard_target has target->me == NULL, module_put() should be called for it as for others, because there were try_module_get() before. Signed-off-by: Dmitry Mishin <dim@openvz.org> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r--net/ipv4/netfilter/arp_tables.c2
-rw-r--r--net/ipv4/netfilter/ip_tables.c2
-rw-r--r--net/ipv6/netfilter/ip6_tables.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv4/netfilter/arp_tables.c b/net/ipv4/netfilter/arp_tables.c
index aaeaa9ce0f28..85f0d73ebfb4 100644
--- a/net/ipv4/netfilter/arp_tables.c
+++ b/net/ipv4/netfilter/arp_tables.c
@@ -485,7 +485,7 @@ static inline int check_entry(struct arpt_entry *e, const char *name, unsigned i
485 if (t->u.kernel.target == &arpt_standard_target) { 485 if (t->u.kernel.target == &arpt_standard_target) {
486 if (!standard_check(t, size)) { 486 if (!standard_check(t, size)) {
487 ret = -EINVAL; 487 ret = -EINVAL;
488 goto out; 488 goto err;
489 } 489 }
490 } else if (t->u.kernel.target->checkentry 490 } else if (t->u.kernel.target->checkentry
491 && !t->u.kernel.target->checkentry(name, e, target, t->data, 491 && !t->u.kernel.target->checkentry(name, e, target, t->data,
diff --git a/net/ipv4/netfilter/ip_tables.c b/net/ipv4/netfilter/ip_tables.c
index a0f36806998c..38e1e4fba0db 100644
--- a/net/ipv4/netfilter/ip_tables.c
+++ b/net/ipv4/netfilter/ip_tables.c
@@ -573,7 +573,7 @@ check_entry(struct ipt_entry *e, const char *name, unsigned int size,
573 if (t->u.kernel.target == &ipt_standard_target) { 573 if (t->u.kernel.target == &ipt_standard_target) {
574 if (!standard_check(t, size)) { 574 if (!standard_check(t, size)) {
575 ret = -EINVAL; 575 ret = -EINVAL;
576 goto cleanup_matches; 576 goto err;
577 } 577 }
578 } else if (t->u.kernel.target->checkentry 578 } else if (t->u.kernel.target->checkentry
579 && !t->u.kernel.target->checkentry(name, e, target, t->data, 579 && !t->u.kernel.target->checkentry(name, e, target, t->data,
diff --git a/net/ipv6/netfilter/ip6_tables.c b/net/ipv6/netfilter/ip6_tables.c
index 73d477ce216b..4ab368fa0b8f 100644
--- a/net/ipv6/netfilter/ip6_tables.c
+++ b/net/ipv6/netfilter/ip6_tables.c
@@ -610,7 +610,7 @@ check_entry(struct ip6t_entry *e, const char *name, unsigned int size,
610 if (t->u.kernel.target == &ip6t_standard_target) { 610 if (t->u.kernel.target == &ip6t_standard_target) {
611 if (!standard_check(t, size)) { 611 if (!standard_check(t, size)) {
612 ret = -EINVAL; 612 ret = -EINVAL;
613 goto cleanup_matches; 613 goto err;
614 } 614 }
615 } else if (t->u.kernel.target->checkentry 615 } else if (t->u.kernel.target->checkentry
616 && !t->u.kernel.target->checkentry(name, e, target, t->data, 616 && !t->u.kernel.target->checkentry(name, e, target, t->data,