Skip to contentSkip to conversation

netns netfilter: per-netns arp_tables

PATCH Applied Alexey Dobriyan 2 participants 2 messages Jan 24, 2008

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 3/5 netns netfilter: per-netns arp_tables

* Propagate netns from userspace.
* arpt_register_table() registers table in supplied netns.

---

 include/linux/netfilter_arp/arp_tables.h |    3 +
 net/ipv4/netfilter/arp_tables.c          |   55 +++++++++++++++++--------------
 net/ipv4/netfilter/arptable_filter.c     |    2 -
 3 files changed, 34 insertions(+), 26 deletions(-)
include/linux/netfilter_arp/arp_tables.h +2 -1
@@ -271,7 +271,8 @@ struct arpt_error
  	xt_register_target(tgt); })
 #define arpt_unregister_target(tgt) xt_unregister_target(tgt)
 
-extern struct arpt_table *arpt_register_table(struct arpt_table *table,
+extern struct arpt_table *arpt_register_table(struct net *net,
+					      struct arpt_table *table,
 					      const struct arpt_replace *repl);
 extern void arpt_unregister_table(struct arpt_table *table);
 extern unsigned int arpt_do_table(struct sk_buff *skb,
net/ipv4/netfilter/arp_tables.c +31 -24

192 lines not on this page · raw message

net/ipv4/netfilter/arptable_filter.c +1 -1
@@ -91,7 +91,7 @@ static int __init arptable_filter_init(void)
 	int ret;
 
 	/* Register table */
-	packet_filter = arpt_register_table(&__packet_filter, &initial_table.repl);
+	packet_filter = arpt_register_table(&init_net, &__packet_filter, &initial_table.repl);
 	if (IS_ERR(packet_filter))
 		return PTR_ERR(packet_filter);
 
#1 lore raw
Quoted 2 lines · Alexey Dobriyan

* Propagate netns from userspace.
* arpt_register_table() registers table in supplied netns.

Applied.