]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/nfsd/export.h
[INET_CONNECTION_SOCK]: Pack struct inet_connection_sock_af_ops
[linux-2.6-omap-h63xx.git] / include / linux / nfsd / export.h
index d2a8abb5011abfb8d5a2ad225672c6c35078dfc5..045e38cdbe646f966abf370cddb8d573b4770d62 100644 (file)
 
 #ifdef __KERNEL__
 
+/*
+ * FS Locations
+ */
+
+#define MAX_FS_LOCATIONS       128
+
+struct nfsd4_fs_location {
+       char *hosts; /* colon separated list of hosts */
+       char *path;  /* slash separated list of path components */
+};
+
+struct nfsd4_fs_locations {
+       uint32_t locations_count;
+       struct nfsd4_fs_location *locations;
+/* If we're not actually serving this data ourselves (only providing a
+ * list of replicas that do serve it) then we set "migrated": */
+       int migrated;
+};
+
 struct svc_export {
        struct cache_head       h;
        struct auth_domain *    ex_client;
        int                     ex_flags;
        struct vfsmount *       ex_mnt;
        struct dentry *         ex_dentry;
+       char *                  ex_path;
        uid_t                   ex_anon_uid;
        gid_t                   ex_anon_gid;
        int                     ex_fsid;
+       struct nfsd4_fs_locations ex_fslocs;
 };
 
 /* an "export key" (expkey) maps a filehandlefragement to an
@@ -96,8 +117,8 @@ struct svc_export *  exp_parent(struct auth_domain *clp,
                                   struct cache_req *reqp);
 int                    exp_rootfh(struct auth_domain *, 
                                        char *path, struct knfsd_fh *, int maxsize);
-int                    exp_pseudoroot(struct auth_domain *, struct svc_fh *fhp, struct cache_req *creq);
-int                    nfserrno(int errno);
+__be32                 exp_pseudoroot(struct auth_domain *, struct svc_fh *fhp, struct cache_req *creq);
+__be32                 nfserrno(int errno);
 
 extern struct cache_detail svc_export_cache;