RTEMS CPU Kit with SuperCore  4.11.3
Data Structures | Macros | Typedefs | Enumerations
nfsproto.h File Reference
#include <sys/mount.h>
Include dependency graph for nfsproto.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

union  nfsfh
 
struct  nfsv2_time
 
struct  nfsv3_time
 
struct  nfs_uquad
 
union  nfs_quadconvert
 
struct  nfsv3_spec
 
struct  nfs_fattr
 
struct  nfsv2_sattr
 
struct  nfsv3_sattr
 
struct  nfs_statfs
 
struct  nfsv3_fsinfo
 
struct  nfsv3_pathconf
 

Macros

#define NFS_PORT   2049
 
#define NFS_PROG   100003
 
#define NFS_VER2   2
 
#define NFS_VER3   3
 
#define NFS_V2MAXDATA   8192
 
#define NFS_MAXDGRAMDATA   16384
 
#define NFS_MAXDATA   32768
 
#define NFS_MAXPATHLEN   1024
 
#define NFS_MAXNAMLEN   255
 
#define NFS_MAXPKTHDR   404
 
#define NFS_MAXPACKET   (NFS_MAXPKTHDR + NFS_MAXDATA)
 
#define NFS_MINPACKET   20
 
#define NFS_FABLKSIZE   512 /* Size in bytes of a block wrt fa_blocks */
 
#define NFS_OK   0
 
#define NFSERR_PERM   1
 
#define NFSERR_NOENT   2
 
#define NFSERR_IO   5
 
#define NFSERR_NXIO   6
 
#define NFSERR_ACCES   13
 
#define NFSERR_EXIST   17
 
#define NFSERR_XDEV   18 /* Version 3 only */
 
#define NFSERR_NODEV   19
 
#define NFSERR_NOTDIR   20
 
#define NFSERR_ISDIR   21
 
#define NFSERR_INVAL   22 /* Version 3 only */
 
#define NFSERR_FBIG   27
 
#define NFSERR_NOSPC   28
 
#define NFSERR_ROFS   30
 
#define NFSERR_MLINK   31 /* Version 3 only */
 
#define NFSERR_NAMETOL   63
 
#define NFSERR_NOTEMPTY   66
 
#define NFSERR_DQUOT   69
 
#define NFSERR_STALE   70
 
#define NFSERR_REMOTE   71 /* Version 3 only */
 
#define NFSERR_WFLUSH   99 /* Version 2 only */
 
#define NFSERR_BADHANDLE   10001 /* The rest Version 3, 4 only */
 
#define NFSERR_NOT_SYNC   10002
 
#define NFSERR_BAD_COOKIE   10003
 
#define NFSERR_NOTSUPP   10004
 
#define NFSERR_TOOSMALL   10005
 
#define NFSERR_SERVERFAULT   10006
 
#define NFSERR_BADTYPE   10007
 
#define NFSERR_JUKEBOX   10008
 
#define NFSERR_TRYLATER   NFSERR_JUKEBOX
 
#define NFSERR_STALEWRITEVERF   30001 /* Fake return for nfs_commit() */
 
#define NFSERR_RETVOID   0x20000000 /* Return void, not error */
 
#define NFSERR_AUTHERR   0x40000000 /* Mark an authentication error */
 
#define NFSERR_RETERR   0x80000000 /* Mark an error return for V3 */
 
#define NFSX_UNSIGNED   4
 
#define NFSX_V2FH   32
 
#define NFSX_V2FATTR   68
 
#define NFSX_V2SATTR   32
 
#define NFSX_V2COOKIE   4
 
#define NFSX_V2STATFS   20
 
#define NFSX_V3FH   (sizeof (fhandle_t)) /* size this server uses */
 
#define NFSX_V3FHMAX   64 /* max. allowed by protocol */
 
#define NFSX_V3FATTR   84
 
#define NFSX_V3SATTR   60 /* max. all fields filled in */
 
#define NFSX_V3SRVSATTR   (sizeof (struct nfsv3_sattr))
 
#define NFSX_V3POSTOPATTR   (NFSX_V3FATTR + NFSX_UNSIGNED)
 
#define NFSX_V3WCCDATA   (NFSX_V3POSTOPATTR + 8 * NFSX_UNSIGNED)
 
#define NFSX_V3COOKIEVERF   8
 
#define NFSX_V3WRITEVERF   8
 
#define NFSX_V3CREATEVERF   8
 
#define NFSX_V3STATFS   52
 
#define NFSX_V3FSINFO   48
 
#define NFSX_V3PATHCONF   24
 
#define NFSX_FH(v3)
 
#define NFSX_SRVFH(v3)   ((v3) ? NFSX_V3FH : NFSX_V2FH)
 
#define NFSX_FATTR(v3)   ((v3) ? NFSX_V3FATTR : NFSX_V2FATTR)
 
#define NFSX_PREOPATTR(v3)   ((v3) ? (7 * NFSX_UNSIGNED) : 0)
 
#define NFSX_POSTOPATTR(v3)   ((v3) ? (NFSX_V3FATTR + NFSX_UNSIGNED) : 0)
 
#define NFSX_POSTOPORFATTR(v3)
 
#define NFSX_WCCDATA(v3)   ((v3) ? NFSX_V3WCCDATA : 0)
 
#define NFSX_WCCORFATTR(v3)   ((v3) ? NFSX_V3WCCDATA : NFSX_V2FATTR)
 
#define NFSX_SATTR(v3)   ((v3) ? NFSX_V3SATTR : NFSX_V2SATTR)
 
#define NFSX_COOKIEVERF(v3)   ((v3) ? NFSX_V3COOKIEVERF : 0)
 
#define NFSX_WRITEVERF(v3)   ((v3) ? NFSX_V3WRITEVERF : 0)
 
#define NFSX_READDIR(v3)
 
#define NFSX_STATFS(v3)   ((v3) ? NFSX_V3STATFS : NFSX_V2STATFS)
 
#define NFSPROC_NULL   0
 
#define NFSPROC_GETATTR   1
 
#define NFSPROC_SETATTR   2
 
#define NFSPROC_LOOKUP   3
 
#define NFSPROC_ACCESS   4
 
#define NFSPROC_READLINK   5
 
#define NFSPROC_READ   6
 
#define NFSPROC_WRITE   7
 
#define NFSPROC_CREATE   8
 
#define NFSPROC_MKDIR   9
 
#define NFSPROC_SYMLINK   10
 
#define NFSPROC_MKNOD   11
 
#define NFSPROC_REMOVE   12
 
#define NFSPROC_RMDIR   13
 
#define NFSPROC_RENAME   14
 
#define NFSPROC_LINK   15
 
#define NFSPROC_READDIR   16
 
#define NFSPROC_READDIRPLUS   17
 
#define NFSPROC_FSSTAT   18
 
#define NFSPROC_FSINFO   19
 
#define NFSPROC_PATHCONF   20
 
#define NFSPROC_COMMIT   21
 
#define NFSPROC_NOOP   22
 
#define NFS_NPROCS   23
 
#define NFSV2PROC_NULL   0
 
#define NFSV2PROC_GETATTR   1
 
#define NFSV2PROC_SETATTR   2
 
#define NFSV2PROC_NOOP   3
 
#define NFSV2PROC_ROOT   NFSV2PROC_NOOP /* Obsolete */
 
#define NFSV2PROC_LOOKUP   4
 
#define NFSV2PROC_READLINK   5
 
#define NFSV2PROC_READ   6
 
#define NFSV2PROC_WRITECACHE   NFSV2PROC_NOOP /* Obsolete */
 
#define NFSV2PROC_WRITE   8
 
#define NFSV2PROC_CREATE   9
 
#define NFSV2PROC_REMOVE   10
 
#define NFSV2PROC_RENAME   11
 
#define NFSV2PROC_LINK   12
 
#define NFSV2PROC_SYMLINK   13
 
#define NFSV2PROC_MKDIR   14
 
#define NFSV2PROC_RMDIR   15
 
#define NFSV2PROC_READDIR   16
 
#define NFSV2PROC_STATFS   17
 
#define NFSV3SATTRTIME_DONTCHANGE   0
 
#define NFSV3SATTRTIME_TOSERVER   1
 
#define NFSV3SATTRTIME_TOCLIENT   2
 
#define NFSV3ACCESS_READ   0x01
 
#define NFSV3ACCESS_LOOKUP   0x02
 
#define NFSV3ACCESS_MODIFY   0x04
 
#define NFSV3ACCESS_EXTEND   0x08
 
#define NFSV3ACCESS_DELETE   0x10
 
#define NFSV3ACCESS_EXECUTE   0x20
 
#define NFSV3WRITE_UNSTABLE   0
 
#define NFSV3WRITE_DATASYNC   1
 
#define NFSV3WRITE_FILESYNC   2
 
#define NFSV3CREATE_UNCHECKED   0
 
#define NFSV3CREATE_GUARDED   1
 
#define NFSV3CREATE_EXCLUSIVE   2
 
#define NFSV3FSINFO_LINK   0x01
 
#define NFSV3FSINFO_SYMLINK   0x02
 
#define NFSV3FSINFO_HOMOGENEOUS   0x08
 
#define NFSV3FSINFO_CANSETTIME   0x10
 
#define NFS_SMALLFH   64
 
#define fa2_size   fa_un.fa_nfsv2.nfsv2fa_size
 
#define fa2_blocksize   fa_un.fa_nfsv2.nfsv2fa_blocksize
 
#define fa2_rdev   fa_un.fa_nfsv2.nfsv2fa_rdev
 
#define fa2_blocks   fa_un.fa_nfsv2.nfsv2fa_blocks
 
#define fa2_fsid   fa_un.fa_nfsv2.nfsv2fa_fsid
 
#define fa2_fileid   fa_un.fa_nfsv2.nfsv2fa_fileid
 
#define fa2_atime   fa_un.fa_nfsv2.nfsv2fa_atime
 
#define fa2_mtime   fa_un.fa_nfsv2.nfsv2fa_mtime
 
#define fa2_ctime   fa_un.fa_nfsv2.nfsv2fa_ctime
 
#define fa3_size   fa_un.fa_nfsv3.nfsv3fa_size
 
#define fa3_used   fa_un.fa_nfsv3.nfsv3fa_used
 
#define fa3_rdev   fa_un.fa_nfsv3.nfsv3fa_rdev
 
#define fa3_fsid   fa_un.fa_nfsv3.nfsv3fa_fsid
 
#define fa3_fileid   fa_un.fa_nfsv3.nfsv3fa_fileid
 
#define fa3_atime   fa_un.fa_nfsv3.nfsv3fa_atime
 
#define fa3_mtime   fa_un.fa_nfsv3.nfsv3fa_mtime
 
#define fa3_ctime   fa_un.fa_nfsv3.nfsv3fa_ctime
 
#define sf_tsize   sf_un.sf_nfsv2.nfsv2sf_tsize
 
#define sf_bsize   sf_un.sf_nfsv2.nfsv2sf_bsize
 
#define sf_blocks   sf_un.sf_nfsv2.nfsv2sf_blocks
 
#define sf_bfree   sf_un.sf_nfsv2.nfsv2sf_bfree
 
#define sf_bavail   sf_un.sf_nfsv2.nfsv2sf_bavail
 
#define sf_tbytes   sf_un.sf_nfsv3.nfsv3sf_tbytes
 
#define sf_fbytes   sf_un.sf_nfsv3.nfsv3sf_fbytes
 
#define sf_abytes   sf_un.sf_nfsv3.nfsv3sf_abytes
 
#define sf_tfiles   sf_un.sf_nfsv3.nfsv3sf_tfiles
 
#define sf_ffiles   sf_un.sf_nfsv3.nfsv3sf_ffiles
 
#define sf_afiles   sf_un.sf_nfsv3.nfsv3sf_afiles
 
#define sf_invarsec   sf_un.sf_nfsv3.nfsv3sf_invarsec
 

Typedefs

typedef union nfsfh nfsfh_t
 
typedef struct nfsv2_time nfstime2
 
typedef struct nfsv3_time nfstime3
 
typedef struct nfs_uquad nfsuint64
 
typedef union nfs_quadconvert nfsquad_t
 
typedef struct nfsv3_spec nfsv3spec
 

Enumerations

enum  nfstype {
  NFNON =0, NFREG =1, NFDIR =2, NFBLK =3,
  NFCHR =4, NFLNK =5, NFSOCK =6, NFFIFO =7
}
 

Macro Definition Documentation

◆ NFSX_FH

#define NFSX_FH (   v3)
Value:
((v3) ? (NFSX_V3FHMAX + NFSX_UNSIGNED) : \
NFSX_V2FH)

◆ NFSX_POSTOPORFATTR

#define NFSX_POSTOPORFATTR (   v3)
Value:
((v3) ? (NFSX_V3FATTR + NFSX_UNSIGNED) : \
NFSX_V2FATTR)

◆ NFSX_READDIR

#define NFSX_READDIR (   v3)
Value:
((v3) ? (5 * NFSX_UNSIGNED) : \
(2 * NFSX_UNSIGNED))