[PATCH RFC] [8/9] Put UDP exports into a namespace

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Andi Kleen
Date: Wednesday, November 21, 2007 - 7:43 pm

The UDP exports are only used by UDPv6 and UDP lite. They are internal functions
not supposed to be used by anybody else. So turn them into a name space that 
only allows those.

---
 net/ipv4/udp.c     |   27 +++++++++++++++------------
 net/ipv4/udplite.c |    6 +++---
 2 files changed, 18 insertions(+), 15 deletions(-)

Index: linux/net/ipv4/udp.c
===================================================================
--- linux.orig/net/ipv4/udp.c
+++ linux/net/ipv4/udp.c
@@ -105,6 +105,9 @@
 #include <net/xfrm.h>
 #include "udp_impl.h"
 
+MODULE_NAMESPACE_ALLOW(udp, udplite);
+MODULE_NAMESPACE_ALLOW(udp, ipv6);
+
 /*
  *	Snmp MIB for the UDP layer
  */
@@ -1641,18 +1644,18 @@ void udp4_proc_exit(void)
 }
 #endif /* CONFIG_PROC_FS */
 
-EXPORT_SYMBOL(udp_disconnect);
-EXPORT_SYMBOL(udp_hash);
-EXPORT_SYMBOL(udp_hash_lock);
-EXPORT_SYMBOL(udp_ioctl);
-EXPORT_SYMBOL(udp_get_port);
-EXPORT_SYMBOL(udp_prot);
-EXPORT_SYMBOL(udp_sendmsg);
-EXPORT_SYMBOL(udp_lib_getsockopt);
-EXPORT_SYMBOL(udp_lib_setsockopt);
-EXPORT_SYMBOL(udp_poll);
+EXPORT_SYMBOL_NS(udp, udp_disconnect);
+EXPORT_SYMBOL_NS(udp, udp_hash);
+EXPORT_SYMBOL_NS(udp, udp_hash_lock);
+EXPORT_SYMBOL_NS(udp, udp_ioctl);
+EXPORT_SYMBOL_NS(udp, udp_get_port);
+EXPORT_SYMBOL_NS(udp, udp_prot);
+EXPORT_SYMBOL_NS(udp, udp_sendmsg);
+EXPORT_SYMBOL_NS(udp, udp_lib_getsockopt);
+EXPORT_SYMBOL_NS(udp, udp_lib_setsockopt);
+EXPORT_SYMBOL_NS(udp, udp_poll);
 
 #ifdef CONFIG_PROC_FS
-EXPORT_SYMBOL(udp_proc_register);
-EXPORT_SYMBOL(udp_proc_unregister);
+EXPORT_SYMBOL_NS(udp, udp_proc_register);
+EXPORT_SYMBOL_NS(udp, udp_proc_unregister);
 #endif
Index: linux/net/ipv4/udplite.c
===================================================================
--- linux.orig/net/ipv4/udplite.c
+++ linux/net/ipv4/udplite.c
@@ -113,6 +113,6 @@ out_register_err:
 	printk(KERN_CRIT "%s: Cannot add UDP-Lite protocol.\n", __FUNCTION__);
 }
 
-EXPORT_SYMBOL(udplite_hash);
-EXPORT_SYMBOL(udplite_prot);
-EXPORT_SYMBOL(udplite_get_port);
+EXPORT_SYMBOL_NS(udp, udplite_hash);
+EXPORT_SYMBOL_NS(udp, udplite_prot);
+EXPORT_SYMBOL_NS(udp, udplite_get_port);
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH RFC] [8/9] Put UDP exports into a namespace, Andi Kleen, (Wed Nov 21, 7:43 pm)
[PATCH RFC] [9/9] Add a inet namespace, Andi Kleen, (Wed Nov 21, 7:43 pm)
Re: [PATCH RFC] [1/9] Core module symbol namespaces code a ..., Christoph Hellwig, (Thu Nov 22, 4:06 am)
Re: [PATCH RFC] [1/9] Core module symbol namespaces code a ..., Arnaldo Carvalho de Melo, (Thu Nov 22, 5:01 am)
Re: [PATCH RFC] [1/9] Core module symbol namespaces code a ..., Christoph Hellwig, (Thu Nov 22, 5:03 am)
Re: [PATCH RFC] [1/9] Core module symbol namespaces code a ..., Stephen Hemminger, (Mon Nov 26, 11:25 am)
Re: [PATCH RFC] [1/9] Core module symbol namespaces code a ..., Christoph Hellwig, (Tue Nov 27, 9:33 am)
Re: [PATCH RFC] [1/9] Core module symbol namespaces code a ..., Stephen Hemminger, (Tue Nov 27, 4:00 pm)
Re: [PATCH RFC] [4/9] modpost: Fix format string warnings, Sam Ravnborg, (Mon Dec 10, 11:50 am)