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