mirror of
https://github.com/torvalds/linux.git
synced 2024-11-24 05:02:12 +00:00
netfilter: ebtables: use nf_register_hooks()
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
cdec7e50a4
commit
e40f51a36a
@ -93,28 +93,20 @@ static struct nf_hook_ops ebt_ops_filter[] __read_mostly = {
|
||||
|
||||
static int __init ebtable_filter_init(void)
|
||||
{
|
||||
int i, j, ret;
|
||||
int ret;
|
||||
|
||||
ret = ebt_register_table(&frame_filter);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
for (i = 0; i < ARRAY_SIZE(ebt_ops_filter); i++)
|
||||
if ((ret = nf_register_hook(&ebt_ops_filter[i])) < 0)
|
||||
goto cleanup;
|
||||
return ret;
|
||||
cleanup:
|
||||
for (j = 0; j < i; j++)
|
||||
nf_unregister_hook(&ebt_ops_filter[j]);
|
||||
ebt_unregister_table(&frame_filter);
|
||||
ret = nf_register_hooks(ebt_ops_filter, ARRAY_SIZE(ebt_ops_filter));
|
||||
if (ret < 0)
|
||||
ebt_unregister_table(&frame_filter);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void __exit ebtable_filter_fini(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(ebt_ops_filter); i++)
|
||||
nf_unregister_hook(&ebt_ops_filter[i]);
|
||||
nf_unregister_hooks(ebt_ops_filter, ARRAY_SIZE(ebt_ops_filter));
|
||||
ebt_unregister_table(&frame_filter);
|
||||
}
|
||||
|
||||
|
@ -100,28 +100,20 @@ static struct nf_hook_ops ebt_ops_nat[] __read_mostly = {
|
||||
|
||||
static int __init ebtable_nat_init(void)
|
||||
{
|
||||
int i, ret, j;
|
||||
int ret;
|
||||
|
||||
ret = ebt_register_table(&frame_nat);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
for (i = 0; i < ARRAY_SIZE(ebt_ops_nat); i++)
|
||||
if ((ret = nf_register_hook(&ebt_ops_nat[i])) < 0)
|
||||
goto cleanup;
|
||||
return ret;
|
||||
cleanup:
|
||||
for (j = 0; j < i; j++)
|
||||
nf_unregister_hook(&ebt_ops_nat[j]);
|
||||
ebt_unregister_table(&frame_nat);
|
||||
ret = nf_register_hooks(ebt_ops_nat, ARRAY_SIZE(ebt_ops_nat));
|
||||
if (ret < 0)
|
||||
ebt_unregister_table(&frame_nat);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void __exit ebtable_nat_fini(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(ebt_ops_nat); i++)
|
||||
nf_unregister_hook(&ebt_ops_nat[i]);
|
||||
nf_unregister_hooks(ebt_ops_nat, ARRAY_SIZE(ebt_ops_nat));
|
||||
ebt_unregister_table(&frame_nat);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user