diff options
author | Bryan Schumaker <bjschuma@netapp.com> | 2012-07-16 16:39:18 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2012-07-17 13:33:53 -0400 |
commit | fcf10398f641c4450119f8a4cc27e9e584edb010 (patch) | |
tree | 6c102abc69d152affb678ef1ca80f67c409839e4 /fs/nfs/internal.h | |
parent | 428360d77c801932e4b28f15160aebbdb5f5a03e (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.h | 25 |
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 | ||
88 | struct 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; | |||
150 | extern void nfs_clients_init(struct net *net); | 161 | extern void nfs_clients_init(struct net *net); |
151 | extern struct nfs_client *nfs_alloc_client(const struct nfs_client_initdata *); | 162 | extern struct nfs_client *nfs_alloc_client(const struct nfs_client_initdata *); |
152 | int nfs_create_rpc_client(struct nfs_client *, const struct rpc_timeout *, rpc_authflavor_t); | 163 | int nfs_create_rpc_client(struct nfs_client *, const struct rpc_timeout *, rpc_authflavor_t); |
164 | struct nfs_client *nfs_get_client(const struct nfs_client_initdata *, | ||
165 | const struct rpc_timeout *, const char *, | ||
166 | rpc_authflavor_t); | ||
167 | int nfs_probe_fsinfo(struct nfs_server *server, struct nfs_fh *, struct nfs_fattr *); | ||
168 | void nfs_server_insert_lists(struct nfs_server *); | ||
169 | void nfs_init_timeout_values(struct rpc_timeout *, int, unsigned int, unsigned int); | ||
170 | int nfs_init_server_rpcclient(struct nfs_server *, const struct rpc_timeout *t, | ||
171 | rpc_authflavor_t); | ||
172 | struct nfs_server *nfs_alloc_server(void); | ||
173 | void nfs_server_copy_userdata(struct nfs_server *, struct nfs_server *); | ||
153 | 174 | ||
154 | extern void nfs_cleanup_cb_ident_idr(struct net *); | 175 | extern void nfs_cleanup_cb_ident_idr(struct net *); |
155 | extern void nfs_put_client(struct nfs_client *); | 176 | extern 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 | ||
216 | int nfs_sockaddr_match_ipaddr(const struct sockaddr *, const struct sockaddr *); | ||
217 | #endif | ||
218 | |||
194 | /* callback_xdr.c */ | 219 | /* callback_xdr.c */ |
195 | extern struct svc_version nfs4_callback_version1; | 220 | extern struct svc_version nfs4_callback_version1; |
196 | extern struct svc_version nfs4_callback_version4; | 221 | extern struct svc_version nfs4_callback_version4; |