RPC: get rid of references to SCVXPRT
[deb_libnfs.git] / nfs / libnfs-raw-nfs.h
index 2d0449781d42f5cf095e338ff8667b654c9c1068..bdac7f48e36a5be9c17b48b7202ac1a7877e70fd 100644 (file)
@@ -1,3 +1,32 @@
+/*
+Copyright (c) 2014, Ronnie Sahlberg
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+   list of conditions and the following disclaimer. 
+2. Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+The views and conclusions contained in the software and documentation are those
+of the authors and should not be interpreted as representing official policies, 
+either expressed or implied, of the FreeBSD Project.
+*/
+
 /*
  * Please do not edit this file.
  * It was generated using rpcgen.
@@ -5,9 +34,11 @@
 
 #ifndef _NFS_H_RPCGEN
 #define _NFS_H_RPCGEN
-
 #include <nfsc/libnfs-zdr.h>
 
+
+
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -21,12 +52,14 @@ extern "C" {
 typedef long long int quad_t;
 typedef long long unsigned u_quad_t;
 #endif
+#if defined(WIN32)
+typedef long long int quad_t;
+typedef long long unsigned u_quad_t;
+#endif
 
 typedef char cookieverf3[NFS3_COOKIEVERFSIZE];
 
-typedef u_quad_t uint64;
-
-typedef uint64 cookie3;
+typedef u_quad_t cookie3;
 
 struct nfs_fh3 {
        struct {
@@ -61,9 +94,9 @@ typedef u_int uid3;
 
 typedef u_int gid3;
 
-typedef uint64 size3;
+typedef u_quad_t size3;
 
-typedef uint64 fileid3;
+typedef u_quad_t fileid3;
 
 struct specdata3 {
        u_int specdata1;
@@ -86,7 +119,7 @@ struct fattr3 {
        size3 size;
        size3 used;
        specdata3 rdev;
-       uint64 fsid;
+       u_quad_t fsid;
        fileid3 fileid;
        nfstime3 atime;
        nfstime3 mtime;
@@ -142,7 +175,7 @@ enum stable_how {
 };
 typedef enum stable_how stable_how;
 
-typedef uint64 offset3;
+typedef u_quad_t offset3;
 
 typedef u_int count3;
 
@@ -911,6 +944,331 @@ struct SETATTR3res {
        } SETATTR3res_u;
 };
 typedef struct SETATTR3res SETATTR3res;
+#define FHSIZE2 32
+
+typedef char fhandle2[FHSIZE2];
+
+enum ftype2 {
+       NF2NON = 0,
+       NF2REG = 1,
+       NF2DIR = 2,
+       NF2BLK = 3,
+       NF2CHR = 4,
+       NF2LNK = 5,
+};
+typedef enum ftype2 ftype2;
+
+struct fattr2 {
+       ftype2 type;
+       u_int mode;
+       u_int nlink;
+       u_int uid;
+       u_int gid;
+       u_int size;
+       u_int blocksize;
+       u_int rdev;
+       u_int blocks;
+       u_int fsid;
+       u_int fileid;
+       nfstime3 atime;
+       nfstime3 mtime;
+       nfstime3 ctime;
+};
+typedef struct fattr2 fattr2;
+
+struct sattr2 {
+       u_int mode;
+       u_int uid;
+       u_int gid;
+       u_int size;
+       nfstime3 atime;
+       nfstime3 mtime;
+};
+typedef struct sattr2 sattr2;
+#define MAXNAMLEN2 255
+
+typedef char *filename2;
+#define MAXPATHLEN2 1024
+
+typedef char *path2;
+#define NFSMAXDATA2 8192
+
+typedef struct {
+       u_int nfsdata2_len;
+       char *nfsdata2_val;
+} nfsdata2;
+#define NFSCOOKIESIZE2 4
+
+typedef char nfscookie2[NFSCOOKIESIZE2];
+
+struct entry2 {
+       u_int fileid;
+       filename2 name;
+       nfscookie2 cookie;
+       struct entry2 *nextentry;
+};
+typedef struct entry2 entry2;
+
+struct diropargs2 {
+       fhandle2 dir;
+       filename2 name;
+};
+typedef struct diropargs2 diropargs2;
+
+struct GETATTR2args {
+       fhandle2 fhandle;
+};
+typedef struct GETATTR2args GETATTR2args;
+
+struct GETATTR2resok {
+       fattr2 attributes;
+};
+typedef struct GETATTR2resok GETATTR2resok;
+
+struct GETATTR2res {
+       nfsstat3 status;
+       union {
+               GETATTR2resok resok;
+       } GETATTR2res_u;
+};
+typedef struct GETATTR2res GETATTR2res;
+
+struct SETATTR2args {
+       fhandle2 fhandle;
+       sattr2 attributes;
+};
+typedef struct SETATTR2args SETATTR2args;
+
+struct SETATTR2resok {
+       fattr2 attributes;
+};
+typedef struct SETATTR2resok SETATTR2resok;
+
+struct SETATTR2res {
+       nfsstat3 status;
+       union {
+               SETATTR2resok resok;
+       } SETATTR2res_u;
+};
+typedef struct SETATTR2res SETATTR2res;
+
+struct LOOKUP2args {
+       diropargs2 what;
+};
+typedef struct LOOKUP2args LOOKUP2args;
+
+struct LOOKUP2resok {
+       fhandle2 file;
+       fattr2 attributes;
+};
+typedef struct LOOKUP2resok LOOKUP2resok;
+
+struct LOOKUP2res {
+       nfsstat3 status;
+       union {
+               LOOKUP2resok resok;
+       } LOOKUP2res_u;
+};
+typedef struct LOOKUP2res LOOKUP2res;
+
+struct READLINK2args {
+       fhandle2 file;
+};
+typedef struct READLINK2args READLINK2args;
+
+struct READLINK2resok {
+       path2 data;
+};
+typedef struct READLINK2resok READLINK2resok;
+
+struct READLINK2res {
+       nfsstat3 status;
+       union {
+               READLINK2resok resok;
+       } READLINK2res_u;
+};
+typedef struct READLINK2res READLINK2res;
+
+struct READ2args {
+       fhandle2 file;
+       u_int offset;
+       u_int count;
+       u_int totalcount;
+};
+typedef struct READ2args READ2args;
+
+struct READ2resok {
+       fattr2 attributes;
+       nfsdata2 data;
+};
+typedef struct READ2resok READ2resok;
+
+struct READ2res {
+       nfsstat3 status;
+       union {
+               READ2resok resok;
+       } READ2res_u;
+};
+typedef struct READ2res READ2res;
+
+struct WRITE2args {
+       fhandle2 file;
+       u_int beginoffset;
+       u_int offset;
+       u_int totalcount;
+       nfsdata2 data;
+};
+typedef struct WRITE2args WRITE2args;
+
+struct WRITE2resok {
+       fattr2 attributes;
+};
+typedef struct WRITE2resok WRITE2resok;
+
+struct WRITE2res {
+       nfsstat3 status;
+       union {
+               WRITE2resok resok;
+       } WRITE2res_u;
+};
+typedef struct WRITE2res WRITE2res;
+
+struct CREATE2args {
+       diropargs2 where;
+       sattr2 attributes;
+};
+typedef struct CREATE2args CREATE2args;
+
+struct CREATE2resok {
+       fhandle2 file;
+       fattr2 attributes;
+};
+typedef struct CREATE2resok CREATE2resok;
+
+struct CREATE2res {
+       nfsstat3 status;
+       union {
+               CREATE2resok resok;
+       } CREATE2res_u;
+};
+typedef struct CREATE2res CREATE2res;
+
+struct REMOVE2args {
+       diropargs2 what;
+};
+typedef struct REMOVE2args REMOVE2args;
+
+struct REMOVE2res {
+       nfsstat3 status;
+};
+typedef struct REMOVE2res REMOVE2res;
+
+struct RENAME2args {
+       diropargs2 from;
+       diropargs2 to;
+};
+typedef struct RENAME2args RENAME2args;
+
+struct RENAME2res {
+       nfsstat3 status;
+};
+typedef struct RENAME2res RENAME2res;
+
+struct LINK2args {
+       fhandle2 from;
+       diropargs2 to;
+};
+typedef struct LINK2args LINK2args;
+
+struct LINK2res {
+       nfsstat3 status;
+};
+typedef struct LINK2res LINK2res;
+
+struct SYMLINK2args {
+       diropargs2 from;
+       path2 to;
+       sattr2 attributes;
+};
+typedef struct SYMLINK2args SYMLINK2args;
+
+struct SYMLINK2res {
+       nfsstat3 status;
+};
+typedef struct SYMLINK2res SYMLINK2res;
+
+struct MKDIR2args {
+       diropargs2 where;
+       sattr2 attributes;
+};
+typedef struct MKDIR2args MKDIR2args;
+
+struct MKDIR2resok {
+       fhandle2 file;
+       fattr2 attributes;
+};
+typedef struct MKDIR2resok MKDIR2resok;
+
+struct MKDIR2res {
+       nfsstat3 status;
+       union {
+               MKDIR2resok resok;
+       } MKDIR2res_u;
+};
+typedef struct MKDIR2res MKDIR2res;
+
+struct RMDIR2args {
+       diropargs2 what;
+};
+typedef struct RMDIR2args RMDIR2args;
+
+struct RMDIR2res {
+       nfsstat3 status;
+};
+typedef struct RMDIR2res RMDIR2res;
+
+struct READDIR2args {
+       fhandle2 dir;
+       nfscookie2 cookie;
+       u_int count;
+};
+typedef struct READDIR2args READDIR2args;
+
+struct READDIR2resok {
+       entry2 *entries;
+       bool_t eof;
+};
+typedef struct READDIR2resok READDIR2resok;
+
+struct READDIR2res {
+       nfsstat3 status;
+       union {
+               READDIR2resok resok;
+       } READDIR2res_u;
+};
+typedef struct READDIR2res READDIR2res;
+
+struct STATFS2args {
+       fhandle2 dir;
+};
+typedef struct STATFS2args STATFS2args;
+
+struct STATFS2resok {
+       u_int tsize;
+       u_int bsize;
+       u_int blocks;
+       u_int bfree;
+       u_int bavail;
+};
+typedef struct STATFS2resok STATFS2resok;
+
+struct STATFS2res {
+       nfsstat3 status;
+       union {
+               STATFS2resok resok;
+       } STATFS2res_u;
+};
+typedef struct STATFS2res STATFS2res;
 
 enum nfsacl_type {
        NFSACL_TYPE_USER_OBJ = 0x0001,
@@ -1003,76 +1361,180 @@ struct SETACL3res {
 typedef struct SETACL3res SETACL3res;
 
 #define NFS_PROGRAM 100003
+#define NFS_V2 2
+
+#if defined(__STDC__) || defined(__cplusplus)
+#define NFS2_NULL 0
+extern  void * nfs2_null_2(void *, void *);
+extern  void * nfs2_null_2_svc(void *, struct svc_req *);
+#define NFS2_GETATTR 1
+extern  GETATTR2res * nfs2_getattr_2(GETATTR2args *, void *);
+extern  GETATTR2res * nfs2_getattr_2_svc(GETATTR2args *, struct svc_req *);
+#define NFS2_SETATTR 2
+extern  SETATTR2res * nfs2_setattr_2(SETATTR2args *, void *);
+extern  SETATTR2res * nfs2_setattr_2_svc(SETATTR2args *, struct svc_req *);
+#define NFS2_LOOKUP 4
+extern  LOOKUP2res * nfs2_lookup_2(LOOKUP2args *, void *);
+extern  LOOKUP2res * nfs2_lookup_2_svc(LOOKUP2args *, struct svc_req *);
+#define NFS2_READLINK 5
+extern  READLINK2res * nfs2_readlink_2(READLINK2args *, void *);
+extern  READLINK2res * nfs2_readlink_2_svc(READLINK2args *, struct svc_req *);
+#define NFS2_READ 6
+extern  READ2res * nfs2_read_2(READ2args *, void *);
+extern  READ2res * nfs2_read_2_svc(READ2args *, struct svc_req *);
+#define NFS2_WRITE 8
+extern  WRITE2res * nfs2_write_2(WRITE2args *, void *);
+extern  WRITE2res * nfs2_write_2_svc(WRITE2args *, struct svc_req *);
+#define NFS2_CREATE 9
+extern  CREATE2res * nfs2_create_2(CREATE2args *, void *);
+extern  CREATE2res * nfs2_create_2_svc(CREATE2args *, struct svc_req *);
+#define NFS2_REMOVE 10
+extern  REMOVE2res * nfs2_remove_2(REMOVE2args *, void *);
+extern  REMOVE2res * nfs2_remove_2_svc(REMOVE2args *, struct svc_req *);
+#define NFS2_RENAME 11
+extern  RENAME2res * nfs2_rename_2(RENAME2args *, void *);
+extern  RENAME2res * nfs2_rename_2_svc(RENAME2args *, struct svc_req *);
+#define NFS2_LINK 12
+extern  LINK2res * nfs2_link_2(LINK2args *, void *);
+extern  LINK2res * nfs2_link_2_svc(LINK2args *, struct svc_req *);
+#define NFS2_SYMLINK 13
+extern  SYMLINK2res * nfs2_symlink_2(SYMLINK2args *, void *);
+extern  SYMLINK2res * nfs2_symlink_2_svc(SYMLINK2args *, struct svc_req *);
+#define NFS2_MKDIR 14
+extern  MKDIR2res * nfs2_mkdir_2(MKDIR2args *, void *);
+extern  MKDIR2res * nfs2_mkdir_2_svc(MKDIR2args *, struct svc_req *);
+#define NFS2_RMDIR 15
+extern  RMDIR2res * nfs2_rmdir_2(RMDIR2args *, void *);
+extern  RMDIR2res * nfs2_rmdir_2_svc(RMDIR2args *, struct svc_req *);
+#define NFS2_READDIR 16
+extern  READDIR2res * nfs2_readdir_2(READDIR2args *, void *);
+extern  READDIR2res * nfs2_readdir_2_svc(READDIR2args *, struct svc_req *);
+#define NFS2_STATFS 17
+extern  STATFS2res * nfs2_statfs_2(STATFS2args *, void *);
+extern  STATFS2res * nfs2_statfs_2_svc(STATFS2args *, struct svc_req *);
+extern int nfs_program_2_freeresult (void *, zdrproc_t, caddr_t);
+
+#else /* K&R C */
+#define NFS2_NULL 0
+extern  void * nfs2_null_2();
+extern  void * nfs2_null_2_svc();
+#define NFS2_GETATTR 1
+extern  GETATTR2res * nfs2_getattr_2();
+extern  GETATTR2res * nfs2_getattr_2_svc();
+#define NFS2_SETATTR 2
+extern  SETATTR2res * nfs2_setattr_2();
+extern  SETATTR2res * nfs2_setattr_2_svc();
+#define NFS2_LOOKUP 4
+extern  LOOKUP2res * nfs2_lookup_2();
+extern  LOOKUP2res * nfs2_lookup_2_svc();
+#define NFS2_READLINK 5
+extern  READLINK2res * nfs2_readlink_2();
+extern  READLINK2res * nfs2_readlink_2_svc();
+#define NFS2_READ 6
+extern  READ2res * nfs2_read_2();
+extern  READ2res * nfs2_read_2_svc();
+#define NFS2_WRITE 8
+extern  WRITE2res * nfs2_write_2();
+extern  WRITE2res * nfs2_write_2_svc();
+#define NFS2_CREATE 9
+extern  CREATE2res * nfs2_create_2();
+extern  CREATE2res * nfs2_create_2_svc();
+#define NFS2_REMOVE 10
+extern  REMOVE2res * nfs2_remove_2();
+extern  REMOVE2res * nfs2_remove_2_svc();
+#define NFS2_RENAME 11
+extern  RENAME2res * nfs2_rename_2();
+extern  RENAME2res * nfs2_rename_2_svc();
+#define NFS2_LINK 12
+extern  LINK2res * nfs2_link_2();
+extern  LINK2res * nfs2_link_2_svc();
+#define NFS2_SYMLINK 13
+extern  SYMLINK2res * nfs2_symlink_2();
+extern  SYMLINK2res * nfs2_symlink_2_svc();
+#define NFS2_MKDIR 14
+extern  MKDIR2res * nfs2_mkdir_2();
+extern  MKDIR2res * nfs2_mkdir_2_svc();
+#define NFS2_RMDIR 15
+extern  RMDIR2res * nfs2_rmdir_2();
+extern  RMDIR2res * nfs2_rmdir_2_svc();
+#define NFS2_READDIR 16
+extern  READDIR2res * nfs2_readdir_2();
+extern  READDIR2res * nfs2_readdir_2_svc();
+#define NFS2_STATFS 17
+extern  STATFS2res * nfs2_statfs_2();
+extern  STATFS2res * nfs2_statfs_2_svc();
+extern int nfs_program_2_freeresult ();
+#endif /* K&R C */
 #define NFS_V3 3
 
 #if defined(__STDC__) || defined(__cplusplus)
 #define NFS3_NULL 0
-extern  void * nfs3_null_3(void *, CLIENT *);
+extern  void * nfs3_null_3(void *, void *);
 extern  void * nfs3_null_3_svc(void *, struct svc_req *);
 #define NFS3_GETATTR 1
-extern  GETATTR3res * nfs3_getattr_3(GETATTR3args *, CLIENT *);
+extern  GETATTR3res * nfs3_getattr_3(GETATTR3args *, void *);
 extern  GETATTR3res * nfs3_getattr_3_svc(GETATTR3args *, struct svc_req *);
 #define NFS3_SETATTR 2
-extern  SETATTR3res * nfs3_setattr_3(SETATTR3args *, CLIENT *);
+extern  SETATTR3res * nfs3_setattr_3(SETATTR3args *, void *);
 extern  SETATTR3res * nfs3_setattr_3_svc(SETATTR3args *, struct svc_req *);
 #define NFS3_LOOKUP 3
-extern  LOOKUP3res * nfs3_lookup_3(LOOKUP3args *, CLIENT *);
+extern  LOOKUP3res * nfs3_lookup_3(LOOKUP3args *, void *);
 extern  LOOKUP3res * nfs3_lookup_3_svc(LOOKUP3args *, struct svc_req *);
 #define NFS3_ACCESS 4
-extern  ACCESS3res * nfs3_access_3(ACCESS3args *, CLIENT *);
+extern  ACCESS3res * nfs3_access_3(ACCESS3args *, void *);
 extern  ACCESS3res * nfs3_access_3_svc(ACCESS3args *, struct svc_req *);
 #define NFS3_READLINK 5
-extern  READLINK3res * nfs3_readlink_3(READLINK3args *, CLIENT *);
+extern  READLINK3res * nfs3_readlink_3(READLINK3args *, void *);
 extern  READLINK3res * nfs3_readlink_3_svc(READLINK3args *, struct svc_req *);
 #define NFS3_READ 6
-extern  READ3res * nfs3_read_3(READ3args *, CLIENT *);
+extern  READ3res * nfs3_read_3(READ3args *, void *);
 extern  READ3res * nfs3_read_3_svc(READ3args *, struct svc_req *);
 #define NFS3_WRITE 7
-extern  WRITE3res * nfs3_write_3(WRITE3args *, CLIENT *);
+extern  WRITE3res * nfs3_write_3(WRITE3args *, void *);
 extern  WRITE3res * nfs3_write_3_svc(WRITE3args *, struct svc_req *);
 #define NFS3_CREATE 8
-extern  CREATE3res * nfs3_create_3(CREATE3args *, CLIENT *);
+extern  CREATE3res * nfs3_create_3(CREATE3args *, void *);
 extern  CREATE3res * nfs3_create_3_svc(CREATE3args *, struct svc_req *);
 #define NFS3_MKDIR 9
-extern  MKDIR3res * nfs3_mkdir_3(MKDIR3args *, CLIENT *);
+extern  MKDIR3res * nfs3_mkdir_3(MKDIR3args *, void *);
 extern  MKDIR3res * nfs3_mkdir_3_svc(MKDIR3args *, struct svc_req *);
 #define NFS3_SYMLINK 10
-extern  SYMLINK3res * nfs3_symlink_3(SYMLINK3args *, CLIENT *);
+extern  SYMLINK3res * nfs3_symlink_3(SYMLINK3args *, void *);
 extern  SYMLINK3res * nfs3_symlink_3_svc(SYMLINK3args *, struct svc_req *);
 #define NFS3_MKNOD 11
-extern  MKNOD3res * nfs3_mknod_3(MKNOD3args *, CLIENT *);
+extern  MKNOD3res * nfs3_mknod_3(MKNOD3args *, void *);
 extern  MKNOD3res * nfs3_mknod_3_svc(MKNOD3args *, struct svc_req *);
 #define NFS3_REMOVE 12
-extern  REMOVE3res * nfs3_remove_3(REMOVE3args *, CLIENT *);
+extern  REMOVE3res * nfs3_remove_3(REMOVE3args *, void *);
 extern  REMOVE3res * nfs3_remove_3_svc(REMOVE3args *, struct svc_req *);
 #define NFS3_RMDIR 13
-extern  RMDIR3res * nfs3_rmdir_3(RMDIR3args *, CLIENT *);
+extern  RMDIR3res * nfs3_rmdir_3(RMDIR3args *, void *);
 extern  RMDIR3res * nfs3_rmdir_3_svc(RMDIR3args *, struct svc_req *);
 #define NFS3_RENAME 14
-extern  RENAME3res * nfs3_rename_3(RENAME3args *, CLIENT *);
+extern  RENAME3res * nfs3_rename_3(RENAME3args *, void *);
 extern  RENAME3res * nfs3_rename_3_svc(RENAME3args *, struct svc_req *);
 #define NFS3_LINK 15
-extern  LINK3res * nfs3_link_3(LINK3args *, CLIENT *);
+extern  LINK3res * nfs3_link_3(LINK3args *, void *);
 extern  LINK3res * nfs3_link_3_svc(LINK3args *, struct svc_req *);
 #define NFS3_READDIR 16
-extern  READDIR3res * nfs3_readdir_3(READDIR3args *, CLIENT *);
+extern  READDIR3res * nfs3_readdir_3(READDIR3args *, void *);
 extern  READDIR3res * nfs3_readdir_3_svc(READDIR3args *, struct svc_req *);
 #define NFS3_READDIRPLUS 17
-extern  READDIRPLUS3res * nfs3_readdirplus_3(READDIRPLUS3args *, CLIENT *);
+extern  READDIRPLUS3res * nfs3_readdirplus_3(READDIRPLUS3args *, void *);
 extern  READDIRPLUS3res * nfs3_readdirplus_3_svc(READDIRPLUS3args *, struct svc_req *);
 #define NFS3_FSSTAT 18
-extern  FSSTAT3res * nfs3_fsstat_3(FSSTAT3args *, CLIENT *);
+extern  FSSTAT3res * nfs3_fsstat_3(FSSTAT3args *, void *);
 extern  FSSTAT3res * nfs3_fsstat_3_svc(FSSTAT3args *, struct svc_req *);
 #define NFS3_FSINFO 19
-extern  FSINFO3res * nfs3_fsinfo_3(FSINFO3args *, CLIENT *);
+extern  FSINFO3res * nfs3_fsinfo_3(FSINFO3args *, void *);
 extern  FSINFO3res * nfs3_fsinfo_3_svc(FSINFO3args *, struct svc_req *);
 #define NFS3_PATHCONF 20
-extern  PATHCONF3res * nfs3_pathconf_3(PATHCONF3args *, CLIENT *);
+extern  PATHCONF3res * nfs3_pathconf_3(PATHCONF3args *, void *);
 extern  PATHCONF3res * nfs3_pathconf_3_svc(PATHCONF3args *, struct svc_req *);
 #define NFS3_COMMIT 21
-extern  COMMIT3res * nfs3_commit_3(COMMIT3args *, CLIENT *);
+extern  COMMIT3res * nfs3_commit_3(COMMIT3args *, void *);
 extern  COMMIT3res * nfs3_commit_3_svc(COMMIT3args *, struct svc_req *);
-extern int nfs_program_3_freeresult (SVCXPRT *, zdrproc_t, caddr_t);
+extern int nfs_program_3_freeresult (void *, zdrproc_t, caddr_t);
 
 #else /* K&R C */
 #define NFS3_NULL 0
@@ -1149,15 +1611,15 @@ extern int nfs_program_3_freeresult ();
 
 #if defined(__STDC__) || defined(__cplusplus)
 #define NFSACL3_NULL 0
-extern  void * nfsacl3_null_3(void *, CLIENT *);
+extern  void * nfsacl3_null_3(void *, void *);
 extern  void * nfsacl3_null_3_svc(void *, struct svc_req *);
 #define NFSACL3_GETACL 1
-extern  GETACL3res * nfsacl3_getacl_3(GETACL3args *, CLIENT *);
+extern  GETACL3res * nfsacl3_getacl_3(GETACL3args *, void *);
 extern  GETACL3res * nfsacl3_getacl_3_svc(GETACL3args *, struct svc_req *);
 #define NFSACL3_SETACL 2
-extern  SETACL3res * nfsacl3_setacl_3(SETACL3args *, CLIENT *);
+extern  SETACL3res * nfsacl3_setacl_3(SETACL3args *, void *);
 extern  SETACL3res * nfsacl3_setacl_3_svc(SETACL3args *, struct svc_req *);
-extern int nfsacl_program_3_freeresult (SVCXPRT *, zdrproc_t, caddr_t);
+extern int nfsacl_program_3_freeresult (void *, zdrproc_t, caddr_t);
 
 #else /* K&R C */
 #define NFSACL3_NULL 0
@@ -1176,7 +1638,6 @@ extern int nfsacl_program_3_freeresult ();
 
 #if defined(__STDC__) || defined(__cplusplus)
 extern  bool_t zdr_cookieverf3 (ZDR *, cookieverf3);
-extern  bool_t zdr_uint64 (ZDR *, uint64*);
 extern  bool_t zdr_cookie3 (ZDR *, cookie3*);
 extern  bool_t zdr_nfs_fh3 (ZDR *, nfs_fh3*);
 extern  bool_t zdr_filename3 (ZDR *, filename3*);
@@ -1303,6 +1764,56 @@ extern  bool_t zdr_SETATTR3args (ZDR *, SETATTR3args*);
 extern  bool_t zdr_SETATTR3resok (ZDR *, SETATTR3resok*);
 extern  bool_t zdr_SETATTR3resfail (ZDR *, SETATTR3resfail*);
 extern  bool_t zdr_SETATTR3res (ZDR *, SETATTR3res*);
+extern  bool_t zdr_fhandle2 (ZDR *, fhandle2);
+extern  bool_t zdr_ftype2 (ZDR *, ftype2*);
+extern  bool_t zdr_fattr2 (ZDR *, fattr2*);
+extern  bool_t zdr_sattr2 (ZDR *, sattr2*);
+extern  bool_t zdr_filename2 (ZDR *, filename2*);
+extern  bool_t zdr_path2 (ZDR *, path2*);
+extern  bool_t zdr_nfsdata2 (ZDR *, nfsdata2*);
+extern  bool_t zdr_nfscookie2 (ZDR *, nfscookie2);
+extern  bool_t zdr_entry2 (ZDR *, entry2*);
+extern  bool_t zdr_diropargs2 (ZDR *, diropargs2*);
+extern  bool_t zdr_GETATTR2args (ZDR *, GETATTR2args*);
+extern  bool_t zdr_GETATTR2resok (ZDR *, GETATTR2resok*);
+extern  bool_t zdr_GETATTR2res (ZDR *, GETATTR2res*);
+extern  bool_t zdr_SETATTR2args (ZDR *, SETATTR2args*);
+extern  bool_t zdr_SETATTR2resok (ZDR *, SETATTR2resok*);
+extern  bool_t zdr_SETATTR2res (ZDR *, SETATTR2res*);
+extern  bool_t zdr_LOOKUP2args (ZDR *, LOOKUP2args*);
+extern  bool_t zdr_LOOKUP2resok (ZDR *, LOOKUP2resok*);
+extern  bool_t zdr_LOOKUP2res (ZDR *, LOOKUP2res*);
+extern  bool_t zdr_READLINK2args (ZDR *, READLINK2args*);
+extern  bool_t zdr_READLINK2resok (ZDR *, READLINK2resok*);
+extern  bool_t zdr_READLINK2res (ZDR *, READLINK2res*);
+extern  bool_t zdr_READ2args (ZDR *, READ2args*);
+extern  bool_t zdr_READ2resok (ZDR *, READ2resok*);
+extern  bool_t zdr_READ2res (ZDR *, READ2res*);
+extern  bool_t zdr_WRITE2args (ZDR *, WRITE2args*);
+extern  bool_t zdr_WRITE2resok (ZDR *, WRITE2resok*);
+extern  bool_t zdr_WRITE2res (ZDR *, WRITE2res*);
+extern  bool_t zdr_CREATE2args (ZDR *, CREATE2args*);
+extern  bool_t zdr_CREATE2resok (ZDR *, CREATE2resok*);
+extern  bool_t zdr_CREATE2res (ZDR *, CREATE2res*);
+extern  bool_t zdr_REMOVE2args (ZDR *, REMOVE2args*);
+extern  bool_t zdr_REMOVE2res (ZDR *, REMOVE2res*);
+extern  bool_t zdr_RENAME2args (ZDR *, RENAME2args*);
+extern  bool_t zdr_RENAME2res (ZDR *, RENAME2res*);
+extern  bool_t zdr_LINK2args (ZDR *, LINK2args*);
+extern  bool_t zdr_LINK2res (ZDR *, LINK2res*);
+extern  bool_t zdr_SYMLINK2args (ZDR *, SYMLINK2args*);
+extern  bool_t zdr_SYMLINK2res (ZDR *, SYMLINK2res*);
+extern  bool_t zdr_MKDIR2args (ZDR *, MKDIR2args*);
+extern  bool_t zdr_MKDIR2resok (ZDR *, MKDIR2resok*);
+extern  bool_t zdr_MKDIR2res (ZDR *, MKDIR2res*);
+extern  bool_t zdr_RMDIR2args (ZDR *, RMDIR2args*);
+extern  bool_t zdr_RMDIR2res (ZDR *, RMDIR2res*);
+extern  bool_t zdr_READDIR2args (ZDR *, READDIR2args*);
+extern  bool_t zdr_READDIR2resok (ZDR *, READDIR2resok*);
+extern  bool_t zdr_READDIR2res (ZDR *, READDIR2res*);
+extern  bool_t zdr_STATFS2args (ZDR *, STATFS2args*);
+extern  bool_t zdr_STATFS2resok (ZDR *, STATFS2resok*);
+extern  bool_t zdr_STATFS2res (ZDR *, STATFS2res*);
 extern  bool_t zdr_nfsacl_type (ZDR *, nfsacl_type*);
 extern  bool_t zdr_nfsacl_ace (ZDR *, nfsacl_ace*);
 extern  bool_t zdr_GETACL3args (ZDR *, GETACL3args*);
@@ -1314,7 +1825,6 @@ extern  bool_t zdr_SETACL3res (ZDR *, SETACL3res*);
 
 #else /* K&R C */
 extern bool_t zdr_cookieverf3 ();
-extern bool_t zdr_uint64 ();
 extern bool_t zdr_cookie3 ();
 extern bool_t zdr_nfs_fh3 ();
 extern bool_t zdr_filename3 ();
@@ -1441,6 +1951,56 @@ extern bool_t zdr_SETATTR3args ();
 extern bool_t zdr_SETATTR3resok ();
 extern bool_t zdr_SETATTR3resfail ();
 extern bool_t zdr_SETATTR3res ();
+extern bool_t zdr_fhandle2 ();
+extern bool_t zdr_ftype2 ();
+extern bool_t zdr_fattr2 ();
+extern bool_t zdr_sattr2 ();
+extern bool_t zdr_filename2 ();
+extern bool_t zdr_path2 ();
+extern bool_t zdr_nfsdata2 ();
+extern bool_t zdr_nfscookie2 ();
+extern bool_t zdr_entry2 ();
+extern bool_t zdr_diropargs2 ();
+extern bool_t zdr_GETATTR2args ();
+extern bool_t zdr_GETATTR2resok ();
+extern bool_t zdr_GETATTR2res ();
+extern bool_t zdr_SETATTR2args ();
+extern bool_t zdr_SETATTR2resok ();
+extern bool_t zdr_SETATTR2res ();
+extern bool_t zdr_LOOKUP2args ();
+extern bool_t zdr_LOOKUP2resok ();
+extern bool_t zdr_LOOKUP2res ();
+extern bool_t zdr_READLINK2args ();
+extern bool_t zdr_READLINK2resok ();
+extern bool_t zdr_READLINK2res ();
+extern bool_t zdr_READ2args ();
+extern bool_t zdr_READ2resok ();
+extern bool_t zdr_READ2res ();
+extern bool_t zdr_WRITE2args ();
+extern bool_t zdr_WRITE2resok ();
+extern bool_t zdr_WRITE2res ();
+extern bool_t zdr_CREATE2args ();
+extern bool_t zdr_CREATE2resok ();
+extern bool_t zdr_CREATE2res ();
+extern bool_t zdr_REMOVE2args ();
+extern bool_t zdr_REMOVE2res ();
+extern bool_t zdr_RENAME2args ();
+extern bool_t zdr_RENAME2res ();
+extern bool_t zdr_LINK2args ();
+extern bool_t zdr_LINK2res ();
+extern bool_t zdr_SYMLINK2args ();
+extern bool_t zdr_SYMLINK2res ();
+extern bool_t zdr_MKDIR2args ();
+extern bool_t zdr_MKDIR2resok ();
+extern bool_t zdr_MKDIR2res ();
+extern bool_t zdr_RMDIR2args ();
+extern bool_t zdr_RMDIR2res ();
+extern bool_t zdr_READDIR2args ();
+extern bool_t zdr_READDIR2resok ();
+extern bool_t zdr_READDIR2res ();
+extern bool_t zdr_STATFS2args ();
+extern bool_t zdr_STATFS2resok ();
+extern bool_t zdr_STATFS2res ();
 extern bool_t zdr_nfsacl_type ();
 extern bool_t zdr_nfsacl_ace ();
 extern bool_t zdr_GETACL3args ();