• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1  /*
2   * NFS protocol definitions
3   *
4   * This file contains constants for Version 2 of the protocol.
5   */
6  #ifndef _LINUX_NFS2_H
7  #define _LINUX_NFS2_H
8  
9  #define NFS2_PORT	2049
10  #define NFS2_MAXDATA	8192
11  #define NFS2_MAXPATHLEN	1024
12  #define NFS2_MAXNAMLEN	255
13  #define NFS2_MAXGROUPS	16
14  #define NFS2_FHSIZE	32
15  #define NFS2_COOKIESIZE	4
16  #define NFS2_FIFO_DEV	(-1)
17  #define NFS2MODE_FMT	0170000
18  #define NFS2MODE_DIR	0040000
19  #define NFS2MODE_CHR	0020000
20  #define NFS2MODE_BLK	0060000
21  #define NFS2MODE_REG	0100000
22  #define NFS2MODE_LNK	0120000
23  #define NFS2MODE_SOCK	0140000
24  #define NFS2MODE_FIFO	0010000
25  
26  
27  /* NFSv2 file types - beware, these are not the same in NFSv3 */
28  enum nfs2_ftype {
29  	NF2NON = 0,
30  	NF2REG = 1,
31  	NF2DIR = 2,
32  	NF2BLK = 3,
33  	NF2CHR = 4,
34  	NF2LNK = 5,
35  	NF2SOCK = 6,
36  	NF2BAD = 7,
37  	NF2FIFO = 8
38  };
39  
40  struct nfs2_fh {
41  	char			data[NFS2_FHSIZE];
42  };
43  
44  /*
45   * Procedure numbers for NFSv2
46   */
47  #define NFS2_VERSION		2
48  #define NFSPROC_NULL		0
49  #define NFSPROC_GETATTR		1
50  #define NFSPROC_SETATTR		2
51  #define NFSPROC_ROOT		3
52  #define NFSPROC_LOOKUP		4
53  #define NFSPROC_READLINK	5
54  #define NFSPROC_READ		6
55  #define NFSPROC_WRITECACHE	7
56  #define NFSPROC_WRITE		8
57  #define NFSPROC_CREATE		9
58  #define NFSPROC_REMOVE		10
59  #define NFSPROC_RENAME		11
60  #define NFSPROC_LINK		12
61  #define NFSPROC_SYMLINK		13
62  #define NFSPROC_MKDIR		14
63  #define NFSPROC_RMDIR		15
64  #define NFSPROC_READDIR		16
65  #define NFSPROC_STATFS		17
66  
67  #endif /* _LINUX_NFS2_H */
68