]>
Commit | Line | Data |
---|---|---|
fd6b7a7f KZ |
1 | /* |
2 | * We want to be able to compile mount on old kernels in such a way | |
3 | * that the binary will work well on more recent kernels. | |
4 | * Thus, if necessary we teach nfsmount.c the structure of new fields | |
5 | * that will come later. | |
22853e4a KZ |
6 | * |
7 | * Moreover, the new kernel includes conflict with glibc includes | |
8 | * so it is easiest to ignore the kernel altogether (at compile time). | |
fd6b7a7f | 9 | */ |
fd6b7a7f | 10 | |
22853e4a | 11 | #define NFS_MOUNT_VERSION 4 |
fd6b7a7f | 12 | |
22853e4a KZ |
13 | struct nfs2_fh { |
14 | char data[32]; | |
15 | }; | |
16 | struct nfs3_fh { | |
17 | unsigned short size; | |
18 | unsigned char data[64]; | |
19 | }; | |
fd6b7a7f KZ |
20 | |
21 | struct nfs_mount_data { | |
22 | int version; /* 1 */ | |
23 | int fd; /* 1 */ | |
22853e4a | 24 | struct nfs2_fh old_root; /* 1 */ |
fd6b7a7f KZ |
25 | int flags; /* 1 */ |
26 | int rsize; /* 1 */ | |
27 | int wsize; /* 1 */ | |
28 | int timeo; /* 1 */ | |
29 | int retrans; /* 1 */ | |
30 | int acregmin; /* 1 */ | |
31 | int acregmax; /* 1 */ | |
32 | int acdirmin; /* 1 */ | |
33 | int acdirmax; /* 1 */ | |
34 | struct sockaddr_in addr; /* 1 */ | |
35 | char hostname[256]; /* 1 */ | |
36 | int namlen; /* 2 */ | |
37 | unsigned int bsize; /* 3 */ | |
22853e4a | 38 | struct nfs3_fh root; /* 4 */ |
fd6b7a7f KZ |
39 | }; |
40 | ||
41 | /* bits in the flags field */ | |
42 | ||
43 | #define NFS_MOUNT_SOFT 0x0001 /* 1 */ | |
44 | #define NFS_MOUNT_INTR 0x0002 /* 1 */ | |
45 | #define NFS_MOUNT_SECURE 0x0004 /* 1 */ | |
46 | #define NFS_MOUNT_POSIX 0x0008 /* 1 */ | |
47 | #define NFS_MOUNT_NOCTO 0x0010 /* 1 */ | |
48 | #define NFS_MOUNT_NOAC 0x0020 /* 1 */ | |
49 | #define NFS_MOUNT_TCP 0x0040 /* 2 */ | |
50 | #define NFS_MOUNT_VER3 0x0080 /* 3 */ | |
51 | #define NFS_MOUNT_KERBEROS 0x0100 /* 3 */ | |
52 | #define NFS_MOUNT_NONLM 0x0200 /* 3 */ | |
66ee8158 | 53 | #define NFS_MOUNT_BROKEN_SUID 0x0400 /* 4 */ |
fd6b7a7f | 54 |