blob: 1a805c3ae3202e9f01fdbc17b0c8923fe3510664 [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI_LINUX_NFSD_FH_H
20#define _UAPI_LINUX_NFSD_FH_H
21#include <linux/types.h>
22#include <linux/nfs.h>
Ben Cheng655a7c02013-10-16 16:09:24 -070023#include <linux/nfs2.h>
24#include <linux/nfs3.h>
25#include <linux/nfs4.h>
26struct nfs_fhbase_old {
Tao Baod7db5942015-01-28 10:07:51 -080027 __u32 fb_dcookie;
28 __u32 fb_ino;
29 __u32 fb_dirino;
30 __u32 fb_dev;
Tao Baod7db5942015-01-28 10:07:51 -080031 __u32 fb_xdev;
32 __u32 fb_xino;
33 __u32 fb_generation;
Ben Cheng655a7c02013-10-16 16:09:24 -070034};
Ben Cheng655a7c02013-10-16 16:09:24 -070035struct nfs_fhbase_new {
Tao Baod7db5942015-01-28 10:07:51 -080036 __u8 fb_version;
37 __u8 fb_auth_type;
38 __u8 fb_fsid_type;
Tao Baod7db5942015-01-28 10:07:51 -080039 __u8 fb_fileid_type;
40 __u32 fb_auth[1];
Ben Cheng655a7c02013-10-16 16:09:24 -070041};
42struct knfsd_fh {
Tao Baod7db5942015-01-28 10:07:51 -080043 unsigned int fh_size;
44 union {
45 struct nfs_fhbase_old fh_old;
46 __u32 fh_pad[NFS4_FHSIZE / 4];
Tao Baod7db5942015-01-28 10:07:51 -080047 struct nfs_fhbase_new fh_new;
48 } fh_base;
Ben Cheng655a7c02013-10-16 16:09:24 -070049};
50#define ofh_dcookie fh_base.fh_old.fb_dcookie
Ben Cheng655a7c02013-10-16 16:09:24 -070051#define ofh_ino fh_base.fh_old.fb_ino
52#define ofh_dirino fh_base.fh_old.fb_dirino
53#define ofh_dev fh_base.fh_old.fb_dev
54#define ofh_xdev fh_base.fh_old.fb_xdev
Ben Cheng655a7c02013-10-16 16:09:24 -070055#define ofh_xino fh_base.fh_old.fb_xino
56#define ofh_generation fh_base.fh_old.fb_generation
57#define fh_version fh_base.fh_new.fb_version
58#define fh_fsid_type fh_base.fh_new.fb_fsid_type
Ben Cheng655a7c02013-10-16 16:09:24 -070059#define fh_auth_type fh_base.fh_new.fb_auth_type
60#define fh_fileid_type fh_base.fh_new.fb_fileid_type
Ben Cheng655a7c02013-10-16 16:09:24 -070061#define fh_fsid fh_base.fh_new.fb_auth
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070062#define fh_auth fh_base.fh_new.fb_auth
Ben Cheng655a7c02013-10-16 16:09:24 -070063#endif