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 */ 28enum 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 40struct 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