Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* |
2 | * linux/net/sunrpc/sunrpc_syms.c | |
3 | * | |
4 | * Symbols exported by the sunrpc module. | |
5 | * | |
6 | * Copyright (C) 1997 Olaf Kirch <okir@monad.swb.de> | |
7 | */ | |
8 | ||
1da177e4 LT |
9 | #include <linux/module.h> |
10 | ||
11 | #include <linux/types.h> | |
1da177e4 LT |
12 | #include <linux/uio.h> |
13 | #include <linux/unistd.h> | |
14 | #include <linux/init.h> | |
15 | ||
16 | #include <linux/sunrpc/sched.h> | |
17 | #include <linux/sunrpc/clnt.h> | |
18 | #include <linux/sunrpc/svc.h> | |
19 | #include <linux/sunrpc/svcsock.h> | |
20 | #include <linux/sunrpc/auth.h> | |
21 | #include <linux/workqueue.h> | |
22 | #include <linux/sunrpc/rpc_pipe_fs.h> | |
49c36fcc | 23 | #include <linux/sunrpc/xprtsock.h> |
1da177e4 | 24 | |
1da177e4 LT |
25 | /* RPC server stuff */ |
26 | EXPORT_SYMBOL(svc_create); | |
27 | EXPORT_SYMBOL(svc_create_thread); | |
a7455442 GB |
28 | EXPORT_SYMBOL(svc_create_pooled); |
29 | EXPORT_SYMBOL(svc_set_num_threads); | |
1da177e4 LT |
30 | EXPORT_SYMBOL(svc_exit_thread); |
31 | EXPORT_SYMBOL(svc_destroy); | |
32 | EXPORT_SYMBOL(svc_drop); | |
33 | EXPORT_SYMBOL(svc_process); | |
34 | EXPORT_SYMBOL(svc_recv); | |
35 | EXPORT_SYMBOL(svc_wake_up); | |
36 | EXPORT_SYMBOL(svc_makesock); | |
37 | EXPORT_SYMBOL(svc_reserve); | |
38 | EXPORT_SYMBOL(svc_auth_register); | |
39 | EXPORT_SYMBOL(auth_domain_lookup); | |
40 | EXPORT_SYMBOL(svc_authenticate); | |
41 | EXPORT_SYMBOL(svc_set_client); | |
42 | ||
43 | /* RPC statistics */ | |
44 | #ifdef CONFIG_PROC_FS | |
1da177e4 LT |
45 | EXPORT_SYMBOL(svc_proc_register); |
46 | EXPORT_SYMBOL(svc_proc_unregister); | |
47 | EXPORT_SYMBOL(svc_seq_show); | |
48 | #endif | |
49 | ||
50 | /* caching... */ | |
51 | EXPORT_SYMBOL(auth_domain_find); | |
52 | EXPORT_SYMBOL(auth_domain_put); | |
53 | EXPORT_SYMBOL(auth_unix_add_addr); | |
54 | EXPORT_SYMBOL(auth_unix_forget_old); | |
55 | EXPORT_SYMBOL(auth_unix_lookup); | |
56 | EXPORT_SYMBOL(cache_check); | |
57 | EXPORT_SYMBOL(cache_flush); | |
58 | EXPORT_SYMBOL(cache_purge); | |
1da177e4 LT |
59 | EXPORT_SYMBOL(cache_register); |
60 | EXPORT_SYMBOL(cache_unregister); | |
61 | EXPORT_SYMBOL(qword_add); | |
62 | EXPORT_SYMBOL(qword_addhex); | |
63 | EXPORT_SYMBOL(qword_get); | |
64 | EXPORT_SYMBOL(svcauth_unix_purge); | |
65 | EXPORT_SYMBOL(unix_domain_find); | |
66 | ||
3fc605a2 | 67 | extern struct cache_detail ip_map_cache, unix_gid_cache; |
1da177e4 LT |
68 | |
69 | static int __init | |
70 | init_sunrpc(void) | |
71 | { | |
72 | int err = register_rpc_pipefs(); | |
73 | if (err) | |
74 | goto out; | |
5bd5f581 AM |
75 | err = rpc_init_mempool(); |
76 | if (err) { | |
77 | unregister_rpc_pipefs(); | |
1da177e4 | 78 | goto out; |
5bd5f581 | 79 | } |
1da177e4 LT |
80 | #ifdef RPC_DEBUG |
81 | rpc_register_sysctl(); | |
82 | #endif | |
83 | #ifdef CONFIG_PROC_FS | |
84 | rpc_proc_init(); | |
85 | #endif | |
1da177e4 | 86 | cache_register(&ip_map_cache); |
3fc605a2 | 87 | cache_register(&unix_gid_cache); |
282b32e1 | 88 | init_socket_xprt(); |
f5c2187c | 89 | rpcauth_init_module(); |
1da177e4 LT |
90 | out: |
91 | return err; | |
92 | } | |
93 | ||
94 | static void __exit | |
95 | cleanup_sunrpc(void) | |
96 | { | |
f5c2187c | 97 | rpcauth_remove_module(); |
282b32e1 | 98 | cleanup_socket_xprt(); |
1da177e4 LT |
99 | unregister_rpc_pipefs(); |
100 | rpc_destroy_mempool(); | |
f35279d3 BA |
101 | if (cache_unregister(&ip_map_cache)) |
102 | printk(KERN_ERR "sunrpc: failed to unregister ip_map cache\n"); | |
3fc605a2 N |
103 | if (cache_unregister(&unix_gid_cache)) |
104 | printk(KERN_ERR "sunrpc: failed to unregister unix_gid cache\n"); | |
1da177e4 LT |
105 | #ifdef RPC_DEBUG |
106 | rpc_unregister_sysctl(); | |
107 | #endif | |
108 | #ifdef CONFIG_PROC_FS | |
109 | rpc_proc_exit(); | |
110 | #endif | |
111 | } | |
112 | MODULE_LICENSE("GPL"); | |
113 | module_init(init_sunrpc); | |
114 | module_exit(cleanup_sunrpc); |