2005-04-17 02:20:36 +04:00
/*
* linux / net / sunrpc / sunrpc_syms . c
*
* Symbols exported by the sunrpc module .
*
* Copyright ( C ) 1997 Olaf Kirch < okir @ monad . swb . de >
*/
# include <linux/module.h>
# include <linux/types.h>
# include <linux/uio.h>
# include <linux/unistd.h>
# include <linux/init.h>
# include <linux/sunrpc/sched.h>
# include <linux/sunrpc/clnt.h>
# include <linux/sunrpc/svc.h>
# include <linux/sunrpc/svcsock.h>
# include <linux/sunrpc/auth.h>
# include <linux/workqueue.h>
# include <linux/sunrpc/rpc_pipe_fs.h>
2007-09-10 21:47:31 +04:00
# include <linux/sunrpc/xprtsock.h>
2005-04-17 02:20:36 +04:00
2007-02-14 11:33:13 +03:00
extern struct cache_detail ip_map_cache , unix_gid_cache ;
2005-04-17 02:20:36 +04:00
static int __init
init_sunrpc ( void )
{
int err = register_rpc_pipefs ( ) ;
if ( err )
goto out ;
2007-05-09 13:34:51 +04:00
err = rpc_init_mempool ( ) ;
if ( err ) {
unregister_rpc_pipefs ( ) ;
2005-04-17 02:20:36 +04:00
goto out ;
2007-05-09 13:34:51 +04:00
}
2005-04-17 02:20:36 +04:00
# ifdef RPC_DEBUG
rpc_register_sysctl ( ) ;
# endif
# ifdef CONFIG_PROC_FS
rpc_proc_init ( ) ;
# endif
cache_register ( & ip_map_cache ) ;
2007-02-14 11:33:13 +03:00
cache_register ( & unix_gid_cache ) ;
2007-12-31 06:07:17 +03:00
svc_init_xprt_sock ( ) ; /* svc sock transport */
init_socket_xprt ( ) ; /* clnt sock transport */
2007-06-26 01:11:20 +04:00
rpcauth_init_module ( ) ;
2005-04-17 02:20:36 +04:00
out :
return err ;
}
static void __exit
cleanup_sunrpc ( void )
{
2007-06-26 01:11:20 +04:00
rpcauth_remove_module ( ) ;
2006-12-06 00:35:51 +03:00
cleanup_socket_xprt ( ) ;
2007-12-31 06:07:17 +03:00
svc_cleanup_xprt_sock ( ) ;
2005-04-17 02:20:36 +04:00
unregister_rpc_pipefs ( ) ;
rpc_destroy_mempool ( ) ;
2007-11-09 00:09:59 +03:00
cache_unregister ( & ip_map_cache ) ;
cache_unregister ( & unix_gid_cache ) ;
2005-04-17 02:20:36 +04:00
# ifdef RPC_DEBUG
rpc_unregister_sysctl ( ) ;
# endif
# ifdef CONFIG_PROC_FS
rpc_proc_exit ( ) ;
# endif
}
MODULE_LICENSE ( " GPL " ) ;
module_init ( init_sunrpc ) ;
module_exit ( cleanup_sunrpc ) ;