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); -
| Greg KH | Og dreams of kernels |
| Jens Axboe | [PATCH 31/33] Fusion: sg chaining support |
| Arnd Bergmann | Re: finding your own dead "CONFIG_" variables |
| Mark Brown | [PATCH 2/2] Subject: natsemi: Allow users to disable workaround for DspCfg reset |
| Tony Breeds | [LGUEST] Look in object dir for .config |
git: | |
| Brian Downing |
