2005-04-16 15:20:36 -07: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 13:47:31 -04:00
# include <linux/sunrpc/xprtsock.h>
2005-04-16 15:20:36 -07:00
2007-02-14 00:33:13 -08:00
extern struct cache_detail ip_map_cache , unix_gid_cache ;
2005-04-16 15:20:36 -07:00
static int __init
init_sunrpc ( void )
{
int err = register_rpc_pipefs ( ) ;
if ( err )
goto out ;
2007-05-09 02:34:51 -07:00
err = rpc_init_mempool ( ) ;
if ( err ) {
unregister_rpc_pipefs ( ) ;
2005-04-16 15:20:36 -07:00
goto out ;
2007-05-09 02:34:51 -07:00
}
2005-04-16 15:20:36 -07:00
# ifdef RPC_DEBUG
rpc_register_sysctl ( ) ;
# endif
# ifdef CONFIG_PROC_FS
rpc_proc_init ( ) ;
# endif
cache_register ( & ip_map_cache ) ;
2007-02-14 00:33:13 -08:00
cache_register ( & unix_gid_cache ) ;
2007-12-30 21:07:17 -06:00
svc_init_xprt_sock ( ) ; /* svc sock transport */
init_socket_xprt ( ) ; /* clnt sock transport */
2007-06-25 17:11:20 -04:00
rpcauth_init_module ( ) ;
2005-04-16 15:20:36 -07:00
out :
return err ;
}
static void __exit
cleanup_sunrpc ( void )
{
2007-06-25 17:11:20 -04:00
rpcauth_remove_module ( ) ;
2006-12-05 16:35:51 -05:00
cleanup_socket_xprt ( ) ;
2007-12-30 21:07:17 -06:00
svc_cleanup_xprt_sock ( ) ;
2005-04-16 15:20:36 -07:00
unregister_rpc_pipefs ( ) ;
rpc_destroy_mempool ( ) ;
2007-11-08 16:09:59 -05:00
cache_unregister ( & ip_map_cache ) ;
cache_unregister ( & unix_gid_cache ) ;
2005-04-16 15:20:36 -07: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 ) ;