static int __net_init iptable_raw_net_init(struct net *net) { struct ipt_replace *repl; repl = ipt_alloc_initial_table(&packet_raw); if (repl == NULL) return -ENOMEM; net->ipv4.iptable_raw = ipt_register_table(net, &packet_raw, repl); kfree(repl); return PTR_ERR_OR_ZERO(net->ipv4.iptable_raw); }
static int __net_init iptable_security_net_init(struct net *net) { struct ipt_replace *repl; repl = ipt_alloc_initial_table(&security_table); if (repl == NULL) return -ENOMEM; net->ipv4.iptable_security = ipt_register_table(net, &security_table, repl); kfree(repl); return PTR_RET(net->ipv4.iptable_security); }
static int __net_init iptable_mangle_net_init(struct net *net) { struct ipt_replace *repl; repl = ipt_alloc_initial_table(&packet_mangler); if (repl == NULL) return -ENOMEM; net->ipv4.iptable_mangle = ipt_register_table(net, &packet_mangler, repl); kfree(repl); return PTR_RET(net->ipv4.iptable_mangle); }
static int __net_init nf_nat_rule_net_init(struct net *net) { struct ipt_replace *repl; repl = ipt_alloc_initial_table(&nat_table); if (repl == NULL) return -ENOMEM; net->ipv4.nat_table = ipt_register_table(net, &nat_table, repl); kfree(repl); if (IS_ERR(net->ipv4.nat_table)) return PTR_ERR(net->ipv4.nat_table); return 0; }
static int __net_init iptable_security_table_init(struct net *net) { struct ipt_replace *repl; int ret; if (net->ipv4.iptable_security) return 0; repl = ipt_alloc_initial_table(&security_table); if (repl == NULL) return -ENOMEM; ret = ipt_register_table(net, &security_table, repl, sectbl_ops, &net->ipv4.iptable_security); kfree(repl); return ret; }
static int __net_init iptable_filter_net_init(struct net *net) { struct ipt_replace *repl; repl = ipt_alloc_initial_table(&packet_filter); if (repl == NULL) return -ENOMEM; /* Entry 1 is the FORWARD hook */ ((struct ipt_standard *)repl->entries)[1].target.verdict = forward ? -NF_ACCEPT - 1 : -NF_DROP - 1; net->ipv4.iptable_filter = ipt_register_table(net, &packet_filter, repl); kfree(repl); return PTR_RET(net->ipv4.iptable_filter); }
static int __net_init iptable_mangle_table_init(struct net *net) { struct ipt_replace *repl; int ret; if (net->ipv4.iptable_mangle) return 0; repl = ipt_alloc_initial_table(&packet_mangler); if (repl == NULL) return -ENOMEM; ret = ipt_register_table(net, &packet_mangler, repl, mangle_ops, &net->ipv4.iptable_mangle); kfree(repl); return ret; }