aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/internal.h
diff options
context:
space:
mode:
authorBryan Schumaker <bjschuma@netapp.com>2012-07-16 16:39:18 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2012-07-17 13:33:53 -0400
commitfcf10398f641c4450119f8a4cc27e9e584edb010 (patch)
tree6c102abc69d152affb678ef1ca80f67c409839e4 /fs/nfs/internal.h
parent428360d77c801932e4b28f15160aebbdb5f5a03e (diff)
NFS: Split out NFS v4 server creating code
These functions are specific to NFS v4 and can be moved to nfs4client.c to keep them out of the generic client. Signed-off-by: Bryan Schumaker <bjschuma@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/internal.h')
-rw-r--r--fs/nfs/internal.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/fs/nfs/internal.h b/fs/nfs/internal.h
index 10df28d14f83..b4a35705246c 100644
--- a/fs/nfs/internal.h
+++ b/fs/nfs/internal.h
@@ -85,6 +85,17 @@ struct nfs_clone_mount {
85 */ 85 */
86#define NFS_MAX_READDIR_PAGES 8 86#define NFS_MAX_READDIR_PAGES 8
87 87
88struct nfs_client_initdata {
89 unsigned long init_flags;
90 const char *hostname;
91 const struct sockaddr *addr;
92 size_t addrlen;
93 const struct nfs_rpc_ops *rpc_ops;
94 int proto;
95 u32 minorversion;
96 struct net *net;
97};
98
88/* 99/*
89 * In-kernel mount arguments 100 * In-kernel mount arguments
90 */ 101 */
@@ -150,6 +161,16 @@ extern const struct rpc_program nfs_program;
150extern void nfs_clients_init(struct net *net); 161extern void nfs_clients_init(struct net *net);
151extern struct nfs_client *nfs_alloc_client(const struct nfs_client_initdata *); 162extern struct nfs_client *nfs_alloc_client(const struct nfs_client_initdata *);
152int nfs_create_rpc_client(struct nfs_client *, const struct rpc_timeout *, rpc_authflavor_t); 163int nfs_create_rpc_client(struct nfs_client *, const struct rpc_timeout *, rpc_authflavor_t);
164struct nfs_client *nfs_get_client(const struct nfs_client_initdata *,
165 const struct rpc_timeout *, const char *,
166 rpc_authflavor_t);
167int nfs_probe_fsinfo(struct nfs_server *server, struct nfs_fh *, struct nfs_fattr *);
168void nfs_server_insert_lists(struct nfs_server *);
169void nfs_init_timeout_values(struct rpc_timeout *, int, unsigned int, unsigned int);
170int nfs_init_server_rpcclient(struct nfs_server *, const struct rpc_timeout *t,
171 rpc_authflavor_t);
172struct nfs_server *nfs_alloc_server(void);
173void nfs_server_copy_userdata(struct nfs_server *, struct nfs_server *);
153 174
154extern void nfs_cleanup_cb_ident_idr(struct net *); 175extern void nfs_cleanup_cb_ident_idr(struct net *);
155extern void nfs_put_client(struct nfs_client *); 176extern void nfs_put_client(struct nfs_client *);
@@ -191,6 +212,10 @@ static inline void nfs_fs_proc_exit(void)
191} 212}
192#endif 213#endif
193 214
215#ifdef CONFIG_NFS_V4_1
216int nfs_sockaddr_match_ipaddr(const struct sockaddr *, const struct sockaddr *);
217#endif
218
194/* callback_xdr.c */ 219/* callback_xdr.c */
195extern struct svc_version nfs4_callback_version1; 220extern struct svc_version nfs4_callback_version1;
196extern struct svc_version nfs4_callback_version4; 221extern struct svc_version nfs4_callback_version4;