/*
 * Please do not edit this file.
 * It was generated using rpcgen.
 */

#ifndef _GLUSTERFS3_XDR_H_RPCGEN
#define _GLUSTERFS3_XDR_H_RPCGEN

#include <rpc/rpc.h>


#ifdef __cplusplus
extern "C" {
#endif

#include <glusterfs/compat.h>
#include "rpc-common-xdr.h"
#include "glusterfs-fops.h"

struct gf_statfs {
	u_quad_t bsize;
	u_quad_t frsize;
	u_quad_t blocks;
	u_quad_t bfree;
	u_quad_t bavail;
	u_quad_t files;
	u_quad_t ffree;
	u_quad_t favail;
	u_quad_t fsid;
	u_quad_t flag;
	u_quad_t namemax;
};
typedef struct gf_statfs gf_statfs;

struct gf_proto_flock {
	u_int type;
	u_int whence;
	u_quad_t start;
	u_quad_t len;
	u_int pid;
	struct {
		u_int lk_owner_len;
		char *lk_owner_val;
	} lk_owner;
};
typedef struct gf_proto_flock gf_proto_flock;

struct gf_proto_lease {
	u_int cmd;
	u_int lease_type;
	char lease_id[16];
	u_int lease_flags;
};
typedef struct gf_proto_lease gf_proto_lease;

struct gf_iatt {
	char ia_gfid[16];
	u_quad_t ia_ino;
	u_quad_t ia_dev;
	u_int mode;
	u_int ia_nlink;
	u_int ia_uid;
	u_int ia_gid;
	u_quad_t ia_rdev;
	u_quad_t ia_size;
	u_int ia_blksize;
	u_quad_t ia_blocks;
	u_int ia_atime;
	u_int ia_atime_nsec;
	u_int ia_mtime;
	u_int ia_mtime_nsec;
	u_int ia_ctime;
	u_int ia_ctime_nsec;
};
typedef struct gf_iatt gf_iatt;

struct gfs3_cbk_cache_invalidation_req {
	char *gfid;
	u_int event_type;
	u_int flags;
	u_int expire_time_attr;
	gf_iatt stat;
	gf_iatt parent_stat;
	gf_iatt oldparent_stat;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_cbk_cache_invalidation_req gfs3_cbk_cache_invalidation_req;

struct gfs3_stat_req {
	char gfid[16];
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_stat_req gfs3_stat_req;

struct gfs3_stat_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_stat_rsp gfs3_stat_rsp;

struct gfs3_readlink_req {
	char gfid[16];
	u_int size;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_readlink_req gfs3_readlink_req;

struct gfs3_readlink_rsp {
	int op_ret;
	int op_errno;
	gf_iatt buf;
	char *path;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_readlink_rsp gfs3_readlink_rsp;

struct gfs3_mknod_req {
	char pargfid[16];
	u_quad_t dev;
	u_int mode;
	u_int umask;
	char *bname;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_mknod_req gfs3_mknod_req;

struct gfs3_mknod_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	gf_iatt preparent;
	gf_iatt postparent;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_mknod_rsp gfs3_mknod_rsp;

struct gfs3_mkdir_req {
	char pargfid[16];
	u_int mode;
	u_int umask;
	char *bname;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_mkdir_req gfs3_mkdir_req;

struct gfs3_mkdir_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	gf_iatt preparent;
	gf_iatt postparent;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_mkdir_rsp gfs3_mkdir_rsp;

struct gfs3_unlink_req {
	char pargfid[16];
	char *bname;
	u_int xflags;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_unlink_req gfs3_unlink_req;

struct gfs3_unlink_rsp {
	int op_ret;
	int op_errno;
	gf_iatt preparent;
	gf_iatt postparent;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_unlink_rsp gfs3_unlink_rsp;

struct gfs3_rmdir_req {
	char pargfid[16];
	int xflags;
	char *bname;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_rmdir_req gfs3_rmdir_req;

struct gfs3_rmdir_rsp {
	int op_ret;
	int op_errno;
	gf_iatt preparent;
	gf_iatt postparent;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_rmdir_rsp gfs3_rmdir_rsp;

struct gfs3_symlink_req {
	char pargfid[16];
	char *bname;
	u_int umask;
	char *linkname;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_symlink_req gfs3_symlink_req;

struct gfs3_symlink_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	gf_iatt preparent;
	gf_iatt postparent;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_symlink_rsp gfs3_symlink_rsp;

struct gfs3_rename_req {
	char oldgfid[16];
	char newgfid[16];
	char *oldbname;
	char *newbname;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_rename_req gfs3_rename_req;

struct gfs3_rename_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	gf_iatt preoldparent;
	gf_iatt postoldparent;
	gf_iatt prenewparent;
	gf_iatt postnewparent;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_rename_rsp gfs3_rename_rsp;

struct gfs3_link_req {
	char oldgfid[16];
	char newgfid[16];
	char *newbname;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_link_req gfs3_link_req;

struct gfs3_link_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	gf_iatt preparent;
	gf_iatt postparent;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_link_rsp gfs3_link_rsp;

struct gfs3_truncate_req {
	char gfid[16];
	u_quad_t offset;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_truncate_req gfs3_truncate_req;

struct gfs3_truncate_rsp {
	int op_ret;
	int op_errno;
	gf_iatt prestat;
	gf_iatt poststat;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_truncate_rsp gfs3_truncate_rsp;

struct gfs3_open_req {
	char gfid[16];
	u_int flags;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_open_req gfs3_open_req;

struct gfs3_open_rsp {
	int op_ret;
	int op_errno;
	quad_t fd;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_open_rsp gfs3_open_rsp;

struct gfs3_read_req {
	char gfid[16];
	quad_t fd;
	u_quad_t offset;
	u_int size;
	u_int flag;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_read_req gfs3_read_req;

struct gfs3_read_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	u_int size;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_read_rsp gfs3_read_rsp;

struct gfs3_lookup_req {
	char gfid[16];
	char pargfid[16];
	u_int flags;
	char *bname;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_lookup_req gfs3_lookup_req;

struct gfs3_lookup_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	gf_iatt postparent;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_lookup_rsp gfs3_lookup_rsp;

struct gfs3_write_req {
	char gfid[16];
	quad_t fd;
	u_quad_t offset;
	u_int size;
	u_int flag;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_write_req gfs3_write_req;

struct gfs3_write_rsp {
	int op_ret;
	int op_errno;
	gf_iatt prestat;
	gf_iatt poststat;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_write_rsp gfs3_write_rsp;

struct gfs3_statfs_req {
	char gfid[16];
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_statfs_req gfs3_statfs_req;

struct gfs3_statfs_rsp {
	int op_ret;
	int op_errno;
	gf_statfs statfs;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_statfs_rsp gfs3_statfs_rsp;

struct gfs3_lk_req {
	char gfid[16];
	int64_t fd;
	u_int cmd;
	u_int type;
	gf_proto_flock flock;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_lk_req gfs3_lk_req;

struct gfs3_lk_rsp {
	int op_ret;
	int op_errno;
	gf_proto_flock flock;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_lk_rsp gfs3_lk_rsp;

struct gfs3_lease_req {
	char gfid[16];
	gf_proto_lease lease;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_lease_req gfs3_lease_req;

struct gfs3_lease_rsp {
	int op_ret;
	int op_errno;
	gf_proto_lease lease;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_lease_rsp gfs3_lease_rsp;

struct gfs3_recall_lease_req {
	char gfid[16];
	u_int lease_type;
	char tid[16];
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_recall_lease_req gfs3_recall_lease_req;

struct gfs3_inodelk_req {
	char gfid[16];
	u_int cmd;
	u_int type;
	gf_proto_flock flock;
	char *volume;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_inodelk_req gfs3_inodelk_req;

struct gfs3_finodelk_req {
	char gfid[16];
	quad_t fd;
	u_int cmd;
	u_int type;
	gf_proto_flock flock;
	char *volume;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_finodelk_req gfs3_finodelk_req;

struct gfs3_flush_req {
	char gfid[16];
	quad_t fd;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_flush_req gfs3_flush_req;

struct gfs3_fsync_req {
	char gfid[16];
	quad_t fd;
	u_int data;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fsync_req gfs3_fsync_req;

struct gfs3_fsync_rsp {
	int op_ret;
	int op_errno;
	gf_iatt prestat;
	gf_iatt poststat;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fsync_rsp gfs3_fsync_rsp;

struct gfs3_setxattr_req {
	char gfid[16];
	u_int flags;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_setxattr_req gfs3_setxattr_req;

struct gfs3_fsetxattr_req {
	char gfid[16];
	int64_t fd;
	u_int flags;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fsetxattr_req gfs3_fsetxattr_req;

struct gfs3_xattrop_req {
	char gfid[16];
	u_int flags;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_xattrop_req gfs3_xattrop_req;

struct gfs3_xattrop_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_xattrop_rsp gfs3_xattrop_rsp;

struct gfs3_fxattrop_req {
	char gfid[16];
	quad_t fd;
	u_int flags;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fxattrop_req gfs3_fxattrop_req;

struct gfs3_fxattrop_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fxattrop_rsp gfs3_fxattrop_rsp;

struct gfs3_getxattr_req {
	char gfid[16];
	u_int namelen;
	char *name;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_getxattr_req gfs3_getxattr_req;

struct gfs3_getxattr_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_getxattr_rsp gfs3_getxattr_rsp;

struct gfs3_fgetxattr_req {
	char gfid[16];
	quad_t fd;
	u_int namelen;
	char *name;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fgetxattr_req gfs3_fgetxattr_req;

struct gfs3_fgetxattr_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fgetxattr_rsp gfs3_fgetxattr_rsp;

struct gfs3_removexattr_req {
	char gfid[16];
	char *name;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_removexattr_req gfs3_removexattr_req;

struct gfs3_fremovexattr_req {
	char gfid[16];
	quad_t fd;
	char *name;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fremovexattr_req gfs3_fremovexattr_req;

struct gfs3_opendir_req {
	char gfid[16];
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_opendir_req gfs3_opendir_req;

struct gfs3_opendir_rsp {
	int op_ret;
	int op_errno;
	quad_t fd;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_opendir_rsp gfs3_opendir_rsp;

struct gfs3_fsyncdir_req {
	char gfid[16];
	quad_t fd;
	int data;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fsyncdir_req gfs3_fsyncdir_req;

struct gfs3_readdir_req {
	char gfid[16];
	quad_t fd;
	u_quad_t offset;
	u_int size;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_readdir_req gfs3_readdir_req;

struct gfs3_readdirp_req {
	char gfid[16];
	quad_t fd;
	u_quad_t offset;
	u_int size;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
};
typedef struct gfs3_readdirp_req gfs3_readdirp_req;

struct gfs3_access_req {
	char gfid[16];
	u_int mask;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_access_req gfs3_access_req;

struct gfs3_create_req {
	char pargfid[16];
	u_int flags;
	u_int mode;
	u_int umask;
	char *bname;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_create_req gfs3_create_req;

struct gfs3_create_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	u_quad_t fd;
	gf_iatt preparent;
	gf_iatt postparent;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_create_rsp gfs3_create_rsp;

struct gfs3_ftruncate_req {
	char gfid[16];
	quad_t fd;
	u_quad_t offset;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_ftruncate_req gfs3_ftruncate_req;

struct gfs3_ftruncate_rsp {
	int op_ret;
	int op_errno;
	gf_iatt prestat;
	gf_iatt poststat;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_ftruncate_rsp gfs3_ftruncate_rsp;

struct gfs3_fstat_req {
	char gfid[16];
	quad_t fd;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fstat_req gfs3_fstat_req;

struct gfs3_fstat_rsp {
	int op_ret;
	int op_errno;
	gf_iatt stat;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fstat_rsp gfs3_fstat_rsp;

struct gfs3_entrylk_req {
	char gfid[16];
	u_int cmd;
	u_int type;
	u_quad_t namelen;
	char *name;
	char *volume;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_entrylk_req gfs3_entrylk_req;

struct gfs3_fentrylk_req {
	char gfid[16];
	quad_t fd;
	u_int cmd;
	u_int type;
	u_quad_t namelen;
	char *name;
	char *volume;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fentrylk_req gfs3_fentrylk_req;

struct gfs3_setattr_req {
	char gfid[16];
	gf_iatt stbuf;
	int valid;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_setattr_req gfs3_setattr_req;

struct gfs3_setattr_rsp {
	int op_ret;
	int op_errno;
	gf_iatt statpre;
	gf_iatt statpost;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_setattr_rsp gfs3_setattr_rsp;

struct gfs3_fsetattr_req {
	quad_t fd;
	gf_iatt stbuf;
	int valid;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fsetattr_req gfs3_fsetattr_req;

struct gfs3_fsetattr_rsp {
	int op_ret;
	int op_errno;
	gf_iatt statpre;
	gf_iatt statpost;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fsetattr_rsp gfs3_fsetattr_rsp;

struct gfs3_fallocate_req {
	char gfid[16];
	quad_t fd;
	u_int flags;
	u_quad_t offset;
	u_quad_t size;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fallocate_req gfs3_fallocate_req;

struct gfs3_fallocate_rsp {
	int op_ret;
	int op_errno;
	gf_iatt statpre;
	gf_iatt statpost;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_fallocate_rsp gfs3_fallocate_rsp;

struct gfs3_discard_req {
	char gfid[16];
	quad_t fd;
	u_quad_t offset;
	u_quad_t size;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_discard_req gfs3_discard_req;

struct gfs3_discard_rsp {
	int op_ret;
	int op_errno;
	gf_iatt statpre;
	gf_iatt statpost;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_discard_rsp gfs3_discard_rsp;

struct gfs3_zerofill_req {
	char gfid[16];
	quad_t fd;
	u_quad_t offset;
	u_quad_t size;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_zerofill_req gfs3_zerofill_req;

struct gfs3_zerofill_rsp {
	int op_ret;
	int op_errno;
	gf_iatt statpre;
	gf_iatt statpost;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_zerofill_rsp gfs3_zerofill_rsp;

struct gfs3_rchecksum_req {
	quad_t fd;
	u_quad_t offset;
	u_int len;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_rchecksum_req gfs3_rchecksum_req;

struct gfs3_rchecksum_rsp {
	int op_ret;
	int op_errno;
	u_int weak_checksum;
	struct {
		u_int strong_checksum_len;
		char *strong_checksum_val;
	} strong_checksum;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_rchecksum_rsp gfs3_rchecksum_rsp;

struct gfs3_ipc_req {
	int op;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_ipc_req gfs3_ipc_req;

struct gfs3_ipc_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_ipc_rsp gfs3_ipc_rsp;

struct gfs3_seek_req {
	char gfid[16];
	quad_t fd;
	u_quad_t offset;
	int what;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_seek_req gfs3_seek_req;

struct gfs3_seek_rsp {
	int op_ret;
	int op_errno;
	u_quad_t offset;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_seek_rsp gfs3_seek_rsp;

struct gf_setvolume_req {
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
};
typedef struct gf_setvolume_req gf_setvolume_req;

struct gf_setvolume_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
};
typedef struct gf_setvolume_rsp gf_setvolume_rsp;

struct gf_getspec_req {
	u_int flags;
	char *key;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gf_getspec_req gf_getspec_req;

struct gf_getspec_rsp {
	int op_ret;
	int op_errno;
	char *spec;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gf_getspec_rsp gf_getspec_rsp;

struct gf_get_volume_info_req {
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
};
typedef struct gf_get_volume_info_req gf_get_volume_info_req;

struct gf_get_volume_info_rsp {
	int op_ret;
	int op_errno;
	char *op_errstr;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
};
typedef struct gf_get_volume_info_rsp gf_get_volume_info_rsp;

struct gf_mgmt_hndsk_req {
	struct {
		u_int hndsk_len;
		char *hndsk_val;
	} hndsk;
};
typedef struct gf_mgmt_hndsk_req gf_mgmt_hndsk_req;

struct gf_mgmt_hndsk_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int hndsk_len;
		char *hndsk_val;
	} hndsk;
};
typedef struct gf_mgmt_hndsk_rsp gf_mgmt_hndsk_rsp;

struct gf_log_req {
	struct {
		u_int msg_len;
		char *msg_val;
	} msg;
};
typedef struct gf_log_req gf_log_req;

struct gf_notify_req {
	u_int flags;
	char *buf;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gf_notify_req gf_notify_req;

struct gf_notify_rsp {
	int op_ret;
	int op_errno;
	u_int flags;
	char *buf;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gf_notify_rsp gf_notify_rsp;

struct gfs3_releasedir_req {
	char gfid[16];
	quad_t fd;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_releasedir_req gfs3_releasedir_req;

struct gfs3_release_req {
	char gfid[16];
	quad_t fd;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_release_req gfs3_release_req;

struct gfs3_dirlist {
	u_quad_t d_ino;
	u_quad_t d_off;
	u_int d_len;
	u_int d_type;
	char *name;
	struct gfs3_dirlist *nextentry;
};
typedef struct gfs3_dirlist gfs3_dirlist;

struct gfs3_readdir_rsp {
	int op_ret;
	int op_errno;
	gfs3_dirlist *reply;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_readdir_rsp gfs3_readdir_rsp;

struct gfs3_dirplist {
	u_quad_t d_ino;
	u_quad_t d_off;
	u_int d_len;
	u_int d_type;
	char *name;
	gf_iatt stat;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
	struct gfs3_dirplist *nextentry;
};
typedef struct gfs3_dirplist gfs3_dirplist;

struct gfs3_readdirp_rsp {
	int op_ret;
	int op_errno;
	gfs3_dirplist *reply;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_readdirp_rsp gfs3_readdirp_rsp;

struct gf_set_lk_ver_rsp {
	int op_ret;
	int op_errno;
	int lk_ver;
};
typedef struct gf_set_lk_ver_rsp gf_set_lk_ver_rsp;

struct gf_set_lk_ver_req {
	char *uid;
	int lk_ver;
};
typedef struct gf_set_lk_ver_req gf_set_lk_ver_req;

struct gf_event_notify_req {
	int op;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
};
typedef struct gf_event_notify_req gf_event_notify_req;

struct gf_event_notify_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
};
typedef struct gf_event_notify_rsp gf_event_notify_rsp;

struct gf_getsnap_name_uuid_req {
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
};
typedef struct gf_getsnap_name_uuid_req gf_getsnap_name_uuid_req;

struct gf_getsnap_name_uuid_rsp {
	int op_ret;
	int op_errno;
	char *op_errstr;
	struct {
		u_int dict_len;
		char *dict_val;
	} dict;
};
typedef struct gf_getsnap_name_uuid_rsp gf_getsnap_name_uuid_rsp;

struct compound_req {
	glusterfs_fop_t fop_enum;
	union {
		gfs3_stat_req compound_stat_req;
		gfs3_readlink_req compound_readlink_req;
		gfs3_mknod_req compound_mknod_req;
		gfs3_mkdir_req compound_mkdir_req;
		gfs3_unlink_req compound_unlink_req;
		gfs3_rmdir_req compound_rmdir_req;
		gfs3_symlink_req compound_symlink_req;
		gfs3_rename_req compound_rename_req;
		gfs3_link_req compound_link_req;
		gfs3_truncate_req compound_truncate_req;
		gfs3_open_req compound_open_req;
		gfs3_read_req compound_read_req;
		gfs3_write_req compound_write_req;
		gfs3_statfs_req compound_statfs_req;
		gfs3_flush_req compound_flush_req;
		gfs3_fsync_req compound_fsync_req;
		gfs3_getxattr_req compound_getxattr_req;
		gfs3_setxattr_req compound_setxattr_req;
		gfs3_removexattr_req compound_removexattr_req;
		gfs3_opendir_req compound_opendir_req;
		gfs3_fsyncdir_req compound_fsyncdir_req;
		gfs3_access_req compound_access_req;
		gfs3_create_req compound_create_req;
		gfs3_ftruncate_req compound_ftruncate_req;
		gfs3_fstat_req compound_fstat_req;
		gfs3_lk_req compound_lk_req;
		gfs3_lookup_req compound_lookup_req;
		gfs3_readdir_req compound_readdir_req;
		gfs3_inodelk_req compound_inodelk_req;
		gfs3_finodelk_req compound_finodelk_req;
		gfs3_entrylk_req compound_entrylk_req;
		gfs3_fentrylk_req compound_fentrylk_req;
		gfs3_xattrop_req compound_xattrop_req;
		gfs3_fxattrop_req compound_fxattrop_req;
		gfs3_fgetxattr_req compound_fgetxattr_req;
		gfs3_fsetxattr_req compound_fsetxattr_req;
		gfs3_rchecksum_req compound_rchecksum_req;
		gfs3_setattr_req compound_setattr_req;
		gfs3_fsetattr_req compound_fsetattr_req;
		gfs3_readdirp_req compound_readdirp_req;
		gfs3_release_req compound_release_req;
		gfs3_releasedir_req compound_releasedir_req;
		gfs3_fremovexattr_req compound_fremovexattr_req;
		gfs3_fallocate_req compound_fallocate_req;
		gfs3_discard_req compound_discard_req;
		gfs3_zerofill_req compound_zerofill_req;
		gfs3_ipc_req compound_ipc_req;
		gfs3_seek_req compound_seek_req;
		gfs3_lease_req compound_lease_req;
	} compound_req_u;
};
typedef struct compound_req compound_req;

struct gfs3_compound_req {
	int compound_version;
	glusterfs_compound_fop_t compound_fop_enum;
	struct {
		u_int compound_req_array_len;
		compound_req *compound_req_array_val;
	} compound_req_array;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_compound_req gfs3_compound_req;

struct compound_rsp {
	glusterfs_fop_t fop_enum;
	union {
		gfs3_stat_rsp compound_stat_rsp;
		gfs3_readlink_rsp compound_readlink_rsp;
		gfs3_mknod_rsp compound_mknod_rsp;
		gfs3_mkdir_rsp compound_mkdir_rsp;
		gfs3_unlink_rsp compound_unlink_rsp;
		gfs3_rmdir_rsp compound_rmdir_rsp;
		gfs3_symlink_rsp compound_symlink_rsp;
		gfs3_rename_rsp compound_rename_rsp;
		gfs3_link_rsp compound_link_rsp;
		gfs3_truncate_rsp compound_truncate_rsp;
		gfs3_open_rsp compound_open_rsp;
		gfs3_read_rsp compound_read_rsp;
		gfs3_write_rsp compound_write_rsp;
		gfs3_statfs_rsp compound_statfs_rsp;
		gf_common_rsp compound_flush_rsp;
		gfs3_fsync_rsp compound_fsync_rsp;
		gfs3_getxattr_rsp compound_getxattr_rsp;
		gf_common_rsp compound_setxattr_rsp;
		gf_common_rsp compound_removexattr_rsp;
		gfs3_opendir_rsp compound_opendir_rsp;
		gf_common_rsp compound_fsyncdir_rsp;
		gf_common_rsp compound_access_rsp;
		gfs3_create_rsp compound_create_rsp;
		gfs3_ftruncate_rsp compound_ftruncate_rsp;
		gfs3_fstat_rsp compound_fstat_rsp;
		gfs3_lk_rsp compound_lk_rsp;
		gfs3_lookup_rsp compound_lookup_rsp;
		gfs3_readdir_rsp compound_readdir_rsp;
		gf_common_rsp compound_inodelk_rsp;
		gf_common_rsp compound_finodelk_rsp;
		gf_common_rsp compound_entrylk_rsp;
		gf_common_rsp compound_fentrylk_rsp;
		gfs3_xattrop_rsp compound_xattrop_rsp;
		gfs3_fxattrop_rsp compound_fxattrop_rsp;
		gfs3_fgetxattr_rsp compound_fgetxattr_rsp;
		gf_common_rsp compound_fsetxattr_rsp;
		gfs3_rchecksum_rsp compound_rchecksum_rsp;
		gfs3_setattr_rsp compound_setattr_rsp;
		gfs3_fsetattr_rsp compound_fsetattr_rsp;
		gfs3_readdirp_rsp compound_readdirp_rsp;
		gf_common_rsp compound_release_rsp;
		gf_common_rsp compound_releasedir_rsp;
		gf_common_rsp compound_fremovexattr_rsp;
		gfs3_fallocate_rsp compound_fallocate_rsp;
		gfs3_discard_rsp compound_discard_rsp;
		gfs3_zerofill_rsp compound_zerofill_rsp;
		gfs3_ipc_rsp compound_ipc_rsp;
		gfs3_seek_rsp compound_seek_rsp;
		gfs3_lease_rsp compound_lease_rsp;
	} compound_rsp_u;
};
typedef struct compound_rsp compound_rsp;

struct gfs3_compound_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int compound_rsp_array_len;
		compound_rsp *compound_rsp_array_val;
	} compound_rsp_array;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_compound_rsp gfs3_compound_rsp;

struct gfs3_locklist {
	gf_proto_flock flock;
	char *client_uid;
	u_int lk_flags;
	struct gfs3_locklist *nextentry;
};
typedef struct gfs3_locklist gfs3_locklist;

struct gfs3_getactivelk_rsp {
	int op_ret;
	int op_errno;
	gfs3_locklist *reply;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_getactivelk_rsp gfs3_getactivelk_rsp;

struct gfs3_getactivelk_req {
	char gfid[16];
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_getactivelk_req gfs3_getactivelk_req;

struct gfs3_setactivelk_rsp {
	int op_ret;
	int op_errno;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_setactivelk_rsp gfs3_setactivelk_rsp;

struct gfs3_setactivelk_req {
	char gfid[16];
	gfs3_locklist *request;
	struct {
		u_int xdata_len;
		char *xdata_val;
	} xdata;
};
typedef struct gfs3_setactivelk_req gfs3_setactivelk_req;

/* the xdr functions */

#if defined(__STDC__) || defined(__cplusplus)
extern  bool_t xdr_gf_statfs (XDR *, gf_statfs*);
extern  bool_t xdr_gf_proto_flock (XDR *, gf_proto_flock*);
extern  bool_t xdr_gf_proto_lease (XDR *, gf_proto_lease*);
extern  bool_t xdr_gf_iatt (XDR *, gf_iatt*);
extern  bool_t xdr_gfs3_cbk_cache_invalidation_req (XDR *, gfs3_cbk_cache_invalidation_req*);
extern  bool_t xdr_gfs3_stat_req (XDR *, gfs3_stat_req*);
extern  bool_t xdr_gfs3_stat_rsp (XDR *, gfs3_stat_rsp*);
extern  bool_t xdr_gfs3_readlink_req (XDR *, gfs3_readlink_req*);
extern  bool_t xdr_gfs3_readlink_rsp (XDR *, gfs3_readlink_rsp*);
extern  bool_t xdr_gfs3_mknod_req (XDR *, gfs3_mknod_req*);
extern  bool_t xdr_gfs3_mknod_rsp (XDR *, gfs3_mknod_rsp*);
extern  bool_t xdr_gfs3_mkdir_req (XDR *, gfs3_mkdir_req*);
extern  bool_t xdr_gfs3_mkdir_rsp (XDR *, gfs3_mkdir_rsp*);
extern  bool_t xdr_gfs3_unlink_req (XDR *, gfs3_unlink_req*);
extern  bool_t xdr_gfs3_unlink_rsp (XDR *, gfs3_unlink_rsp*);
extern  bool_t xdr_gfs3_rmdir_req (XDR *, gfs3_rmdir_req*);
extern  bool_t xdr_gfs3_rmdir_rsp (XDR *, gfs3_rmdir_rsp*);
extern  bool_t xdr_gfs3_symlink_req (XDR *, gfs3_symlink_req*);
extern  bool_t xdr_gfs3_symlink_rsp (XDR *, gfs3_symlink_rsp*);
extern  bool_t xdr_gfs3_rename_req (XDR *, gfs3_rename_req*);
extern  bool_t xdr_gfs3_rename_rsp (XDR *, gfs3_rename_rsp*);
extern  bool_t xdr_gfs3_link_req (XDR *, gfs3_link_req*);
extern  bool_t xdr_gfs3_link_rsp (XDR *, gfs3_link_rsp*);
extern  bool_t xdr_gfs3_truncate_req (XDR *, gfs3_truncate_req*);
extern  bool_t xdr_gfs3_truncate_rsp (XDR *, gfs3_truncate_rsp*);
extern  bool_t xdr_gfs3_open_req (XDR *, gfs3_open_req*);
extern  bool_t xdr_gfs3_open_rsp (XDR *, gfs3_open_rsp*);
extern  bool_t xdr_gfs3_read_req (XDR *, gfs3_read_req*);
extern  bool_t xdr_gfs3_read_rsp (XDR *, gfs3_read_rsp*);
extern  bool_t xdr_gfs3_lookup_req (XDR *, gfs3_lookup_req*);
extern  bool_t xdr_gfs3_lookup_rsp (XDR *, gfs3_lookup_rsp*);
extern  bool_t xdr_gfs3_write_req (XDR *, gfs3_write_req*);
extern  bool_t xdr_gfs3_write_rsp (XDR *, gfs3_write_rsp*);
extern  bool_t xdr_gfs3_statfs_req (XDR *, gfs3_statfs_req*);
extern  bool_t xdr_gfs3_statfs_rsp (XDR *, gfs3_statfs_rsp*);
extern  bool_t xdr_gfs3_lk_req (XDR *, gfs3_lk_req*);
extern  bool_t xdr_gfs3_lk_rsp (XDR *, gfs3_lk_rsp*);
extern  bool_t xdr_gfs3_lease_req (XDR *, gfs3_lease_req*);
extern  bool_t xdr_gfs3_lease_rsp (XDR *, gfs3_lease_rsp*);
extern  bool_t xdr_gfs3_recall_lease_req (XDR *, gfs3_recall_lease_req*);
extern  bool_t xdr_gfs3_inodelk_req (XDR *, gfs3_inodelk_req*);
extern  bool_t xdr_gfs3_finodelk_req (XDR *, gfs3_finodelk_req*);
extern  bool_t xdr_gfs3_flush_req (XDR *, gfs3_flush_req*);
extern  bool_t xdr_gfs3_fsync_req (XDR *, gfs3_fsync_req*);
extern  bool_t xdr_gfs3_fsync_rsp (XDR *, gfs3_fsync_rsp*);
extern  bool_t xdr_gfs3_setxattr_req (XDR *, gfs3_setxattr_req*);
extern  bool_t xdr_gfs3_fsetxattr_req (XDR *, gfs3_fsetxattr_req*);
extern  bool_t xdr_gfs3_xattrop_req (XDR *, gfs3_xattrop_req*);
extern  bool_t xdr_gfs3_xattrop_rsp (XDR *, gfs3_xattrop_rsp*);
extern  bool_t xdr_gfs3_fxattrop_req (XDR *, gfs3_fxattrop_req*);
extern  bool_t xdr_gfs3_fxattrop_rsp (XDR *, gfs3_fxattrop_rsp*);
extern  bool_t xdr_gfs3_getxattr_req (XDR *, gfs3_getxattr_req*);
extern  bool_t xdr_gfs3_getxattr_rsp (XDR *, gfs3_getxattr_rsp*);
extern  bool_t xdr_gfs3_fgetxattr_req (XDR *, gfs3_fgetxattr_req*);
extern  bool_t xdr_gfs3_fgetxattr_rsp (XDR *, gfs3_fgetxattr_rsp*);
extern  bool_t xdr_gfs3_removexattr_req (XDR *, gfs3_removexattr_req*);
extern  bool_t xdr_gfs3_fremovexattr_req (XDR *, gfs3_fremovexattr_req*);
extern  bool_t xdr_gfs3_opendir_req (XDR *, gfs3_opendir_req*);
extern  bool_t xdr_gfs3_opendir_rsp (XDR *, gfs3_opendir_rsp*);
extern  bool_t xdr_gfs3_fsyncdir_req (XDR *, gfs3_fsyncdir_req*);
extern  bool_t xdr_gfs3_readdir_req (XDR *, gfs3_readdir_req*);
extern  bool_t xdr_gfs3_readdirp_req (XDR *, gfs3_readdirp_req*);
extern  bool_t xdr_gfs3_access_req (XDR *, gfs3_access_req*);
extern  bool_t xdr_gfs3_create_req (XDR *, gfs3_create_req*);
extern  bool_t xdr_gfs3_create_rsp (XDR *, gfs3_create_rsp*);
extern  bool_t xdr_gfs3_ftruncate_req (XDR *, gfs3_ftruncate_req*);
extern  bool_t xdr_gfs3_ftruncate_rsp (XDR *, gfs3_ftruncate_rsp*);
extern  bool_t xdr_gfs3_fstat_req (XDR *, gfs3_fstat_req*);
extern  bool_t xdr_gfs3_fstat_rsp (XDR *, gfs3_fstat_rsp*);
extern  bool_t xdr_gfs3_entrylk_req (XDR *, gfs3_entrylk_req*);
extern  bool_t xdr_gfs3_fentrylk_req (XDR *, gfs3_fentrylk_req*);
extern  bool_t xdr_gfs3_setattr_req (XDR *, gfs3_setattr_req*);
extern  bool_t xdr_gfs3_setattr_rsp (XDR *, gfs3_setattr_rsp*);
extern  bool_t xdr_gfs3_fsetattr_req (XDR *, gfs3_fsetattr_req*);
extern  bool_t xdr_gfs3_fsetattr_rsp (XDR *, gfs3_fsetattr_rsp*);
extern  bool_t xdr_gfs3_fallocate_req (XDR *, gfs3_fallocate_req*);
extern  bool_t xdr_gfs3_fallocate_rsp (XDR *, gfs3_fallocate_rsp*);
extern  bool_t xdr_gfs3_discard_req (XDR *, gfs3_discard_req*);
extern  bool_t xdr_gfs3_discard_rsp (XDR *, gfs3_discard_rsp*);
extern  bool_t xdr_gfs3_zerofill_req (XDR *, gfs3_zerofill_req*);
extern  bool_t xdr_gfs3_zerofill_rsp (XDR *, gfs3_zerofill_rsp*);
extern  bool_t xdr_gfs3_rchecksum_req (XDR *, gfs3_rchecksum_req*);
extern  bool_t xdr_gfs3_rchecksum_rsp (XDR *, gfs3_rchecksum_rsp*);
extern  bool_t xdr_gfs3_ipc_req (XDR *, gfs3_ipc_req*);
extern  bool_t xdr_gfs3_ipc_rsp (XDR *, gfs3_ipc_rsp*);
extern  bool_t xdr_gfs3_seek_req (XDR *, gfs3_seek_req*);
extern  bool_t xdr_gfs3_seek_rsp (XDR *, gfs3_seek_rsp*);
extern  bool_t xdr_gf_setvolume_req (XDR *, gf_setvolume_req*);
extern  bool_t xdr_gf_setvolume_rsp (XDR *, gf_setvolume_rsp*);
extern  bool_t xdr_gf_getspec_req (XDR *, gf_getspec_req*);
extern  bool_t xdr_gf_getspec_rsp (XDR *, gf_getspec_rsp*);
extern  bool_t xdr_gf_get_volume_info_req (XDR *, gf_get_volume_info_req*);
extern  bool_t xdr_gf_get_volume_info_rsp (XDR *, gf_get_volume_info_rsp*);
extern  bool_t xdr_gf_mgmt_hndsk_req (XDR *, gf_mgmt_hndsk_req*);
extern  bool_t xdr_gf_mgmt_hndsk_rsp (XDR *, gf_mgmt_hndsk_rsp*);
extern  bool_t xdr_gf_log_req (XDR *, gf_log_req*);
extern  bool_t xdr_gf_notify_req (XDR *, gf_notify_req*);
extern  bool_t xdr_gf_notify_rsp (XDR *, gf_notify_rsp*);
extern  bool_t xdr_gfs3_releasedir_req (XDR *, gfs3_releasedir_req*);
extern  bool_t xdr_gfs3_release_req (XDR *, gfs3_release_req*);
extern  bool_t xdr_gfs3_dirlist (XDR *, gfs3_dirlist*);
extern  bool_t xdr_gfs3_readdir_rsp (XDR *, gfs3_readdir_rsp*);
extern  bool_t xdr_gfs3_dirplist (XDR *, gfs3_dirplist*);
extern  bool_t xdr_gfs3_readdirp_rsp (XDR *, gfs3_readdirp_rsp*);
extern  bool_t xdr_gf_set_lk_ver_rsp (XDR *, gf_set_lk_ver_rsp*);
extern  bool_t xdr_gf_set_lk_ver_req (XDR *, gf_set_lk_ver_req*);
extern  bool_t xdr_gf_event_notify_req (XDR *, gf_event_notify_req*);
extern  bool_t xdr_gf_event_notify_rsp (XDR *, gf_event_notify_rsp*);
extern  bool_t xdr_gf_getsnap_name_uuid_req (XDR *, gf_getsnap_name_uuid_req*);
extern  bool_t xdr_gf_getsnap_name_uuid_rsp (XDR *, gf_getsnap_name_uuid_rsp*);
extern  bool_t xdr_compound_req (XDR *, compound_req*);
extern  bool_t xdr_gfs3_compound_req (XDR *, gfs3_compound_req*);
extern  bool_t xdr_compound_rsp (XDR *, compound_rsp*);
extern  bool_t xdr_gfs3_compound_rsp (XDR *, gfs3_compound_rsp*);
extern  bool_t xdr_gfs3_locklist (XDR *, gfs3_locklist*);
extern  bool_t xdr_gfs3_getactivelk_rsp (XDR *, gfs3_getactivelk_rsp*);
extern  bool_t xdr_gfs3_getactivelk_req (XDR *, gfs3_getactivelk_req*);
extern  bool_t xdr_gfs3_setactivelk_rsp (XDR *, gfs3_setactivelk_rsp*);
extern  bool_t xdr_gfs3_setactivelk_req (XDR *, gfs3_setactivelk_req*);

#else /* K&R C */
extern bool_t xdr_gf_statfs ();
extern bool_t xdr_gf_proto_flock ();
extern bool_t xdr_gf_proto_lease ();
extern bool_t xdr_gf_iatt ();
extern bool_t xdr_gfs3_cbk_cache_invalidation_req ();
extern bool_t xdr_gfs3_stat_req ();
extern bool_t xdr_gfs3_stat_rsp ();
extern bool_t xdr_gfs3_readlink_req ();
extern bool_t xdr_gfs3_readlink_rsp ();
extern bool_t xdr_gfs3_mknod_req ();
extern bool_t xdr_gfs3_mknod_rsp ();
extern bool_t xdr_gfs3_mkdir_req ();
extern bool_t xdr_gfs3_mkdir_rsp ();
extern bool_t xdr_gfs3_unlink_req ();
extern bool_t xdr_gfs3_unlink_rsp ();
extern bool_t xdr_gfs3_rmdir_req ();
extern bool_t xdr_gfs3_rmdir_rsp ();
extern bool_t xdr_gfs3_symlink_req ();
extern bool_t xdr_gfs3_symlink_rsp ();
extern bool_t xdr_gfs3_rename_req ();
extern bool_t xdr_gfs3_rename_rsp ();
extern bool_t xdr_gfs3_link_req ();
extern bool_t xdr_gfs3_link_rsp ();
extern bool_t xdr_gfs3_truncate_req ();
extern bool_t xdr_gfs3_truncate_rsp ();
extern bool_t xdr_gfs3_open_req ();
extern bool_t xdr_gfs3_open_rsp ();
extern bool_t xdr_gfs3_read_req ();
extern bool_t xdr_gfs3_read_rsp ();
extern bool_t xdr_gfs3_lookup_req ();
extern bool_t xdr_gfs3_lookup_rsp ();
extern bool_t xdr_gfs3_write_req ();
extern bool_t xdr_gfs3_write_rsp ();
extern bool_t xdr_gfs3_statfs_req ();
extern bool_t xdr_gfs3_statfs_rsp ();
extern bool_t xdr_gfs3_lk_req ();
extern bool_t xdr_gfs3_lk_rsp ();
extern bool_t xdr_gfs3_lease_req ();
extern bool_t xdr_gfs3_lease_rsp ();
extern bool_t xdr_gfs3_recall_lease_req ();
extern bool_t xdr_gfs3_inodelk_req ();
extern bool_t xdr_gfs3_finodelk_req ();
extern bool_t xdr_gfs3_flush_req ();
extern bool_t xdr_gfs3_fsync_req ();
extern bool_t xdr_gfs3_fsync_rsp ();
extern bool_t xdr_gfs3_setxattr_req ();
extern bool_t xdr_gfs3_fsetxattr_req ();
extern bool_t xdr_gfs3_xattrop_req ();
extern bool_t xdr_gfs3_xattrop_rsp ();
extern bool_t xdr_gfs3_fxattrop_req ();
extern bool_t xdr_gfs3_fxattrop_rsp ();
extern bool_t xdr_gfs3_getxattr_req ();
extern bool_t xdr_gfs3_getxattr_rsp ();
extern bool_t xdr_gfs3_fgetxattr_req ();
extern bool_t xdr_gfs3_fgetxattr_rsp ();
extern bool_t xdr_gfs3_removexattr_req ();
extern bool_t xdr_gfs3_fremovexattr_req ();
extern bool_t xdr_gfs3_opendir_req ();
extern bool_t xdr_gfs3_opendir_rsp ();
extern bool_t xdr_gfs3_fsyncdir_req ();
extern bool_t xdr_gfs3_readdir_req ();
extern bool_t xdr_gfs3_readdirp_req ();
extern bool_t xdr_gfs3_access_req ();
extern bool_t xdr_gfs3_create_req ();
extern bool_t xdr_gfs3_create_rsp ();
extern bool_t xdr_gfs3_ftruncate_req ();
extern bool_t xdr_gfs3_ftruncate_rsp ();
extern bool_t xdr_gfs3_fstat_req ();
extern bool_t xdr_gfs3_fstat_rsp ();
extern bool_t xdr_gfs3_entrylk_req ();
extern bool_t xdr_gfs3_fentrylk_req ();
extern bool_t xdr_gfs3_setattr_req ();
extern bool_t xdr_gfs3_setattr_rsp ();
extern bool_t xdr_gfs3_fsetattr_req ();
extern bool_t xdr_gfs3_fsetattr_rsp ();
extern bool_t xdr_gfs3_fallocate_req ();
extern bool_t xdr_gfs3_fallocate_rsp ();
extern bool_t xdr_gfs3_discard_req ();
extern bool_t xdr_gfs3_discard_rsp ();
extern bool_t xdr_gfs3_zerofill_req ();
extern bool_t xdr_gfs3_zerofill_rsp ();
extern bool_t xdr_gfs3_rchecksum_req ();
extern bool_t xdr_gfs3_rchecksum_rsp ();
extern bool_t xdr_gfs3_ipc_req ();
extern bool_t xdr_gfs3_ipc_rsp ();
extern bool_t xdr_gfs3_seek_req ();
extern bool_t xdr_gfs3_seek_rsp ();
extern bool_t xdr_gf_setvolume_req ();
extern bool_t xdr_gf_setvolume_rsp ();
extern bool_t xdr_gf_getspec_req ();
extern bool_t xdr_gf_getspec_rsp ();
extern bool_t xdr_gf_get_volume_info_req ();
extern bool_t xdr_gf_get_volume_info_rsp ();
extern bool_t xdr_gf_mgmt_hndsk_req ();
extern bool_t xdr_gf_mgmt_hndsk_rsp ();
extern bool_t xdr_gf_log_req ();
extern bool_t xdr_gf_notify_req ();
extern bool_t xdr_gf_notify_rsp ();
extern bool_t xdr_gfs3_releasedir_req ();
extern bool_t xdr_gfs3_release_req ();
extern bool_t xdr_gfs3_dirlist ();
extern bool_t xdr_gfs3_readdir_rsp ();
extern bool_t xdr_gfs3_dirplist ();
extern bool_t xdr_gfs3_readdirp_rsp ();
extern bool_t xdr_gf_set_lk_ver_rsp ();
extern bool_t xdr_gf_set_lk_ver_req ();
extern bool_t xdr_gf_event_notify_req ();
extern bool_t xdr_gf_event_notify_rsp ();
extern bool_t xdr_gf_getsnap_name_uuid_req ();
extern bool_t xdr_gf_getsnap_name_uuid_rsp ();
extern bool_t xdr_compound_req ();
extern bool_t xdr_gfs3_compound_req ();
extern bool_t xdr_compound_rsp ();
extern bool_t xdr_gfs3_compound_rsp ();
extern bool_t xdr_gfs3_locklist ();
extern bool_t xdr_gfs3_getactivelk_rsp ();
extern bool_t xdr_gfs3_getactivelk_req ();
extern bool_t xdr_gfs3_setactivelk_rsp ();
extern bool_t xdr_gfs3_setactivelk_req ();

#endif /* K&R C */

#ifdef __cplusplus
}
#endif

#endif /* !_GLUSTERFS3_XDR_H_RPCGEN */
