mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-27 22:24:11 +08:00
[NETFILTER]: bridge-netfilter: use nf_register_hooks/nf_unregister_hooks
Additionally mark the init function __init. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
efbc597634
commit
5eb87f456e
@ -949,44 +949,29 @@ static ctl_table brnf_net_table[] = {
|
||||
};
|
||||
#endif
|
||||
|
||||
int br_netfilter_init(void)
|
||||
int __init br_netfilter_init(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(br_nf_ops); i++) {
|
||||
int ret;
|
||||
|
||||
if ((ret = nf_register_hook(&br_nf_ops[i])) >= 0)
|
||||
continue;
|
||||
|
||||
while (i--)
|
||||
nf_unregister_hook(&br_nf_ops[i]);
|
||||
int ret;
|
||||
|
||||
ret = nf_register_hooks(br_nf_ops, ARRAY_SIZE(br_nf_ops));
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
brnf_sysctl_header = register_sysctl_table(brnf_net_table, 0);
|
||||
if (brnf_sysctl_header == NULL) {
|
||||
printk(KERN_WARNING
|
||||
"br_netfilter: can't register to sysctl.\n");
|
||||
for (i = 0; i < ARRAY_SIZE(br_nf_ops); i++)
|
||||
nf_unregister_hook(&br_nf_ops[i]);
|
||||
return -EFAULT;
|
||||
nf_unregister_hooks(br_nf_ops, ARRAY_SIZE(br_nf_ops));
|
||||
return -ENOMEM;
|
||||
}
|
||||
#endif
|
||||
|
||||
printk(KERN_NOTICE "Bridge firewalling registered\n");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void br_netfilter_fini(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = ARRAY_SIZE(br_nf_ops) - 1; i >= 0; i--)
|
||||
nf_unregister_hook(&br_nf_ops[i]);
|
||||
nf_unregister_hooks(br_nf_ops, ARRAY_SIZE(br_nf_ops));
|
||||
#ifdef CONFIG_SYSCTL
|
||||
unregister_sysctl_table(brnf_sysctl_header);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user