aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4
diff options
context:
space:
mode:
authorJan Engelhardt <jengelh@medozas.de>2009-07-10 12:55:11 -0400
committerJan Engelhardt <jengelh@medozas.de>2010-03-25 10:02:19 -0400
commitd2a7b6bad2c38e41eddb0b24d03627d9e7aa3f7b (patch)
tree826eb9d112029819aa44925346a55f887b1c3baf /net/ipv4
parentff67e4e42bd178b1179c4d8e5c1fde18758ce84f (diff)
netfilter: xtables: make use of xt_request_find_target
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Diffstat (limited to 'net/ipv4')
-rw-r--r--net/ipv4/netfilter/arp_tables.c20
-rw-r--r--net/ipv4/netfilter/ip_tables.c20
2 files changed, 16 insertions, 24 deletions
diff --git a/net/ipv4/netfilter/arp_tables.c b/net/ipv4/netfilter/arp_tables.c
index f07d77f65751..e8e363d90365 100644
--- a/net/ipv4/netfilter/arp_tables.c
+++ b/net/ipv4/netfilter/arp_tables.c
@@ -523,13 +523,11 @@ find_check_entry(struct arpt_entry *e, const char *name, unsigned int size)
523 return ret; 523 return ret;
524 524
525 t = arpt_get_target(e); 525 t = arpt_get_target(e);
526 target = try_then_request_module(xt_find_target(NFPROTO_ARP, 526 target = xt_request_find_target(NFPROTO_ARP, t->u.user.name,
527 t->u.user.name, 527 t->u.user.revision);
528 t->u.user.revision), 528 if (IS_ERR(target)) {
529 "arpt_%s", t->u.user.name);
530 if (IS_ERR(target) || !target) {
531 duprintf("find_check_entry: `%s' not found\n", t->u.user.name); 529 duprintf("find_check_entry: `%s' not found\n", t->u.user.name);
532 ret = target ? PTR_ERR(target) : -ENOENT; 530 ret = PTR_ERR(target);
533 goto out; 531 goto out;
534 } 532 }
535 t->u.kernel.target = target; 533 t->u.kernel.target = target;
@@ -1252,14 +1250,12 @@ check_compat_entry_size_and_hooks(struct compat_arpt_entry *e,
1252 entry_offset = (void *)e - (void *)base; 1250 entry_offset = (void *)e - (void *)base;
1253 1251
1254 t = compat_arpt_get_target(e); 1252 t = compat_arpt_get_target(e);
1255 target = try_then_request_module(xt_find_target(NFPROTO_ARP, 1253 target = xt_request_find_target(NFPROTO_ARP, t->u.user.name,
1256 t->u.user.name, 1254 t->u.user.revision);
1257 t->u.user.revision), 1255 if (IS_ERR(target)) {
1258 "arpt_%s", t->u.user.name);
1259 if (IS_ERR(target) || !target) {
1260 duprintf("check_compat_entry_size_and_hooks: `%s' not found\n", 1256 duprintf("check_compat_entry_size_and_hooks: `%s' not found\n",
1261 t->u.user.name); 1257 t->u.user.name);
1262 ret = target ? PTR_ERR(target) : -ENOENT; 1258 ret = PTR_ERR(target);
1263 goto out; 1259 goto out;
1264 } 1260 }
1265 t->u.kernel.target = target; 1261 t->u.kernel.target = target;
diff --git a/net/ipv4/netfilter/ip_tables.c b/net/ipv4/netfilter/ip_tables.c
index 73fdf20263ed..e24ec48ee8cd 100644
--- a/net/ipv4/netfilter/ip_tables.c
+++ b/net/ipv4/netfilter/ip_tables.c
@@ -701,13 +701,11 @@ find_check_entry(struct ipt_entry *e, struct net *net, const char *name,
701 } 701 }
702 702
703 t = ipt_get_target(e); 703 t = ipt_get_target(e);
704 target = try_then_request_module(xt_find_target(AF_INET, 704 target = xt_request_find_target(NFPROTO_IPV4, t->u.user.name,
705 t->u.user.name, 705 t->u.user.revision);
706 t->u.user.revision), 706 if (IS_ERR(target)) {
707 "ipt_%s", t->u.user.name);
708 if (IS_ERR(target) || !target) {
709 duprintf("find_check_entry: `%s' not found\n", t->u.user.name); 707 duprintf("find_check_entry: `%s' not found\n", t->u.user.name);
710 ret = target ? PTR_ERR(target) : -ENOENT; 708 ret = PTR_ERR(target);
711 goto cleanup_matches; 709 goto cleanup_matches;
712 } 710 }
713 t->u.kernel.target = target; 711 t->u.kernel.target = target;
@@ -1547,14 +1545,12 @@ check_compat_entry_size_and_hooks(struct compat_ipt_entry *e,
1547 } 1545 }
1548 1546
1549 t = compat_ipt_get_target(e); 1547 t = compat_ipt_get_target(e);
1550 target = try_then_request_module(xt_find_target(AF_INET, 1548 target = xt_request_find_target(NFPROTO_IPV4, t->u.user.name,
1551 t->u.user.name, 1549 t->u.user.revision);
1552 t->u.user.revision), 1550 if (IS_ERR(target)) {
1553 "ipt_%s", t->u.user.name);
1554 if (IS_ERR(target) || !target) {
1555 duprintf("check_compat_entry_size_and_hooks: `%s' not found\n", 1551 duprintf("check_compat_entry_size_and_hooks: `%s' not found\n",
1556 t->u.user.name); 1552 t->u.user.name);
1557 ret = target ? PTR_ERR(target) : -ENOENT; 1553 ret = PTR_ERR(target);
1558 goto release_matches; 1554 goto release_matches;
1559 } 1555 }
1560 t->u.kernel.target = target; 1556 t->u.kernel.target = target;