[NETNS][UDP]: Register /proc/net/udp in a namespace.
authorPavel Emelyanov <xemul@openvz.org>
Mon, 24 Mar 2008 21:53:49 +0000 (14:53 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 24 Mar 2008 21:53:49 +0000 (14:53 -0700)
After the commit a91275eff43a527e1a25d6d034cbcd19ee323e64 ([NETNS][IPV6]
udp - make proc handle the network namespace) it is now possible to make
this file present in newly created namespaces.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/udp.c

index 8c1f5eaafcd20aba4ce835702177f5e68431484f..9cd48b0bb7d4442214cd5f9a8f54f50793b208d9 100644 (file)
@@ -1701,14 +1701,29 @@ static struct udp_seq_afinfo udp4_seq_afinfo = {
        .seq_fops       = &udp4_seq_fops,
 };
 
+static int udp4_proc_init_net(struct net *net)
+{
+       return udp_proc_register(net, &udp4_seq_afinfo);
+}
+
+static void udp4_proc_exit_net(struct net *net)
+{
+       udp_proc_unregister(net, &udp4_seq_afinfo);
+}
+
+static struct pernet_operations udp4_net_ops = {
+       .init = udp4_proc_init_net,
+       .exit = udp4_proc_exit_net,
+};
+
 int __init udp4_proc_init(void)
 {
-       return udp_proc_register(&init_net, &udp4_seq_afinfo);
+       return register_pernet_subsys(&udp4_net_ops);
 }
 
 void udp4_proc_exit(void)
 {
-       udp_proc_unregister(&init_net, &udp4_seq_afinfo);
+       unregister_pernet_subsys(&udp4_net_ops);
 }
 #endif /* CONFIG_PROC_FS */