X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=nfs%2Fnfs.x;h=6e2d7a47d6bd9f044cfd762565bea6a1eec4615d;hb=6f914247fb78dd70cd700f302c62a7144e4f61df;hp=1f4976b14e3a3b5188a2306dc616c7fe9d2db654;hpb=e02614571c7eceb883826e6bdede7945694e3fbd;p=deb_libnfs.git diff --git a/nfs/nfs.x b/nfs/nfs.x index 1f4976b..6e2d7a4 100644 --- a/nfs/nfs.x +++ b/nfs/nfs.x @@ -7,8 +7,7 @@ const NFS3_COOKIEVERFSIZE = 8; typedef opaque cookieverf3[NFS3_COOKIEVERFSIZE]; - -/*unsigned hyper can be overridden by giving rpcgen -DU_INT64_PLATTFORM_TYPE="foo" - for plattforms +/*unsigned hyper can be overridden by giving rpcgen -DU_INT64_PLATTFORM_TYPE=" where rpcgen doesn't know anything about hyper default to unsigned hyper as of rfc 1813 */ #ifndef U_INT64_PLATTFORM_TYPE @@ -16,6 +15,7 @@ typedef opaque cookieverf3[NFS3_COOKIEVERFSIZE]; #endif/*U_INT64_PLATTFORM_TYPE*/ typedef U_INT64_PLATTFORM_TYPE uint64; + typedef uint64 cookie3; struct nfs_fh3 { @@ -39,44 +39,40 @@ enum ftype3 { NF3FIFO = 7 }; -typedef unsigned long uint32; - -typedef long int32; +typedef unsigned int mode3; -typedef uint32 mode3; +typedef unsigned int uid3; -typedef uint32 uid3; - -typedef uint32 gid3; +typedef unsigned int gid3; typedef uint64 size3; typedef uint64 fileid3; struct specdata3 { - uint32 specdata1; - uint32 specdata2; + unsigned int specdata1; + unsigned int specdata2; }; struct nfstime3 { - uint32 seconds; - uint32 nseconds; + unsigned int seconds; + unsigned int nseconds; }; struct fattr3 { - ftype3 type; - mode3 mode; - uint32 nlink; - uid3 uid; - gid3 gid; - size3 size; - size3 used; - specdata3 rdev; - uint64 fsid; - fileid3 fileid; - nfstime3 atime; - nfstime3 mtime; - nfstime3 ctime; + ftype3 type; + mode3 mode; + unsigned int nlink; + uid3 uid; + gid3 gid; + size3 size; + size3 used; + specdata3 rdev; + uint64 fsid; + fileid3 fileid; + nfstime3 atime; + nfstime3 mtime; + nfstime3 ctime; }; union post_op_attr switch (bool attributes_follow) { @@ -127,7 +123,7 @@ enum stable_how { typedef uint64 offset3; -typedef uint32 count3; +typedef unsigned int count3; struct wcc_attr { size3 size; @@ -228,13 +224,13 @@ const ACCESS3_DELETE = 0x0010; const ACCESS3_EXECUTE = 0x0020; struct ACCESS3args { - nfs_fh3 object; - uint32 access; + nfs_fh3 object; + unsigned int access; }; struct ACCESS3resok { - post_op_attr obj_attributes; - uint32 access; + post_op_attr obj_attributes; + unsigned int access; }; struct ACCESS3resfail { @@ -424,16 +420,16 @@ struct FSINFO3args { struct FSINFO3resok { post_op_attr obj_attributes; - uint32 rtmax; - uint32 rtpref; - uint32 rtmult; - uint32 wtmax; - uint32 wtpref; - uint32 wtmult; - uint32 dtpref; + unsigned int rtmax; + unsigned int rtpref; + unsigned int rtmult; + unsigned int wtmax; + unsigned int wtpref; + unsigned int wtmult; + unsigned int dtpref; size3 maxfilesize; nfstime3 time_delta; - uint32 properties; + unsigned int properties; }; struct FSINFO3resfail { @@ -460,7 +456,7 @@ struct FSSTAT3resok { size3 tfiles; size3 ffiles; size3 afiles; - uint32 invarsec; + unsigned int invarsec; }; struct FSSTAT3resfail { @@ -480,8 +476,8 @@ struct PATHCONF3args { struct PATHCONF3resok { post_op_attr obj_attributes; - uint32 linkmax; - uint32 name_max; + unsigned int linkmax; + unsigned int name_max; bool no_trunc; bool chown_restricted; bool case_insensitive; @@ -816,7 +812,8 @@ program NFS_PROGRAM { SYMLINK3res NFS3_SYMLINK(SYMLINK3args) = 10; -/* MKNOD3res NFSPROC3_MKNOD(MKNOD3args) = 11;*/ + MKNOD3res + NFS3_MKNOD(MKNOD3args) = 11; REMOVE3res NFS3_REMOVE(REMOVE3args) = 12; @@ -877,8 +874,8 @@ const NFSACL_PERM_EXEC = 0x01; struct nfsacl_ace { enum nfsacl_type type; - uint32_t id; - uint32_t perm; + unsigned int id; + unsigned int perm; }; const NFSACL_MASK_ACL_ENTRY = 0x0001; @@ -887,17 +884,17 @@ const NFSACL_MASK_ACL_DEFAULT_ENTRY = 0x0004; const NFSACL_MASK_ACL_DEFAULT_COUNT = 0x0008; struct GETACL3args { - nfs_fh3 dir; - uint32 mask; + nfs_fh3 dir; + unsigned int mask; }; struct GETACL3resok { - post_op_attr attr; - uint32_t mask; - uint32_t ace_count; - struct nfsacl_ace ace<>; - uint32_t default_ace_count; - struct nfsacl_ace default_ace<>; + post_op_attr attr; + unsigned int mask; + unsigned int ace_count; + struct nfsacl_ace ace<>; + unsigned int default_ace_count; + struct nfsacl_ace default_ace<>; }; union GETACL3res switch (nfsstat3 status) { @@ -907,6 +904,26 @@ default: void; }; +struct SETACL3args { + nfs_fh3 dir; + unsigned int mask; + unsigned int ace_count; + struct nfsacl_ace ace<>; + unsigned int default_ace_count; + struct nfsacl_ace default_ace<>; +}; + +struct SETACL3resok { + post_op_attr attr; +}; + +union SETACL3res switch (nfsstat3 status) { +case NFS3_OK: + SETACL3resok resok; +default: + void; +}; + program NFSACL_PROGRAM { version NFSACL_V3 { void @@ -914,5 +931,8 @@ program NFSACL_PROGRAM { GETACL3res NFSACL3_GETACL(GETACL3args) = 1; + + SETACL3res + NFSACL3_SETACL(SETACL3args) = 2; } = 3; } = 100227;