diff options
Diffstat (limited to 'libglusterfs/src/call-stub.h')
-rw-r--r-- | libglusterfs/src/call-stub.h | 1104 |
1 files changed, 1104 insertions, 0 deletions
diff --git a/libglusterfs/src/call-stub.h b/libglusterfs/src/call-stub.h new file mode 100644 index 00000000000..12e94a15803 --- /dev/null +++ b/libglusterfs/src/call-stub.h @@ -0,0 +1,1104 @@ +/* + Copyright (c) 2007, 2008 Z RESEARCH, Inc. <http://www.zresearch.com> + This file is part of GlusterFS. + + GlusterFS is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3 of the License, + or (at your option) any later version. + + GlusterFS is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see + <http://www.gnu.org/licenses/>. +*/ + +#ifndef _CALL_STUB_H_ +#define _CALL_STUB_H_ + +#ifndef _CONFIG_H +#define _CONFIG_H +#include "config.h" +#endif + +#include "xlator.h" +#include "stack.h" +#include "list.h" + +typedef struct { + struct list_head list; + char wind; + call_frame_t *frame; + glusterfs_fop_t fop; + + union { + /* lookup */ + struct { + fop_lookup_t fn; + loc_t loc; + dict_t *xattr_req; + } lookup; + struct { + fop_lookup_cbk_t fn; + int32_t op_ret, op_errno; + inode_t *inode; + struct stat buf; + dict_t *dict; + } lookup_cbk; + + /* stat */ + struct { + fop_stat_t fn; + loc_t loc; + } stat; + struct { + fop_stat_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } stat_cbk; + + /* fstat */ + struct { + fop_fstat_t fn; + fd_t *fd; + } fstat; + struct { + fop_fstat_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } fstat_cbk; + + /* chmod */ + struct { + fop_chmod_t fn; + loc_t loc; + mode_t mode; + } chmod; + struct { + fop_chmod_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } chmod_cbk; + + /* fchmod */ + struct { + fop_fchmod_t fn; + fd_t *fd; + mode_t mode; + } fchmod; + struct { + fop_fchmod_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } fchmod_cbk; + + /* chown */ + struct { + fop_chown_t fn; + loc_t loc; + uid_t uid; + gid_t gid; + } chown; + struct { + fop_chown_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } chown_cbk; + + /* fchown */ + struct { + fop_fchown_t fn; + fd_t *fd; + uid_t uid; + gid_t gid; + } fchown; + struct { + fop_fchown_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } fchown_cbk; + + /* truncate */ + struct { + fop_truncate_t fn; + loc_t loc; + off_t off; + } truncate; + struct { + fop_truncate_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } truncate_cbk; + + /* ftruncate */ + struct { + fop_ftruncate_t fn; + fd_t *fd; + off_t off; + } ftruncate; + struct { + fop_ftruncate_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } ftruncate_cbk; + + /* utimens */ + struct { + fop_utimens_t fn; + loc_t loc; + struct timespec tv[2]; + } utimens; + struct { + fop_utimens_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } utimens_cbk; + + /* access */ + struct { + fop_access_t fn; + loc_t loc; + int32_t mask; + } access; + struct { + fop_access_cbk_t fn; + int32_t op_ret, op_errno; + } access_cbk; + + /* readlink */ + struct { + fop_readlink_t fn; + loc_t loc; + size_t size; + } readlink; + struct { + fop_readlink_cbk_t fn; + int32_t op_ret, op_errno; + const char *buf; + } readlink_cbk; + + /* mknod */ + struct { + fop_mknod_t fn; + loc_t loc; + mode_t mode; + dev_t rdev; + } mknod; + struct { + fop_mknod_cbk_t fn; + int32_t op_ret, op_errno; + inode_t *inode; + struct stat buf; + } mknod_cbk; + + /* mkdir */ + struct { + fop_mkdir_t fn; + loc_t loc; + mode_t mode; + } mkdir; + struct { + fop_mkdir_cbk_t fn; + int32_t op_ret, op_errno; + inode_t *inode; + struct stat buf; + } mkdir_cbk; + + /* unlink */ + struct { + fop_unlink_t fn; + loc_t loc; + } unlink; + struct { + fop_unlink_cbk_t fn; + int32_t op_ret, op_errno; + } unlink_cbk; + + /* rmdir */ + struct { + fop_rmdir_t fn; + loc_t loc; + } rmdir; + struct { + fop_rmdir_cbk_t fn; + int32_t op_ret, op_errno; + } rmdir_cbk; + + /* symlink */ + struct { + fop_symlink_t fn; + const char *linkname; + loc_t loc; + } symlink; + struct { + fop_symlink_cbk_t fn; + int32_t op_ret, op_errno; + inode_t *inode; + struct stat buf; + } symlink_cbk; + + /* rename */ + struct { + fop_rename_t fn; + loc_t old; + loc_t new; + } rename; + struct { + fop_rename_cbk_t fn; + int32_t op_ret, op_errno; + struct stat buf; + } rename_cbk; + + /* link */ + struct { + fop_link_t fn; + loc_t oldloc; + loc_t newloc; + } link; + struct { + fop_link_cbk_t fn; + int32_t op_ret, op_errno; + inode_t *inode; + struct stat buf; + } link_cbk; + + /* create */ + struct { + fop_create_t fn; + loc_t loc; + int32_t flags; + mode_t mode; + fd_t *fd; + } create; + struct { + fop_create_cbk_t fn; + int32_t op_ret, op_errno; + fd_t *fd; + inode_t *inode; + struct stat buf; + } create_cbk; + + /* open */ + struct { + fop_open_t fn; + loc_t loc; + int32_t flags; + fd_t *fd; + } open; + struct { + fop_open_cbk_t fn; + int32_t op_ret, op_errno; + fd_t *fd; + } open_cbk; + + /* readv */ + struct { + fop_readv_t fn; + fd_t *fd; + size_t size; + off_t off; + } readv; + struct { + fop_readv_cbk_t fn; + int32_t op_ret; + int32_t op_errno; + struct iovec *vector; + int32_t count; + struct stat stbuf; + dict_t *rsp_refs; + } readv_cbk; + + /* writev */ + struct { + fop_writev_t fn; + fd_t *fd; + struct iovec *vector; + int32_t count; + off_t off; + dict_t *req_refs; + } writev; + struct { + fop_writev_cbk_t fn; + int32_t op_ret, op_errno; + struct stat stbuf; + } writev_cbk; + + /* flush */ + struct { + fop_flush_t fn; + fd_t *fd; + } flush; + struct { + fop_flush_cbk_t fn; + int32_t op_ret, op_errno; + } flush_cbk; + + /* fsync */ + struct { + fop_fsync_t fn; + fd_t *fd; + int32_t datasync; + } fsync; + struct { + fop_fsync_cbk_t fn; + int32_t op_ret, op_errno; + } fsync_cbk; + + /* opendir */ + struct { + fop_opendir_t fn; + loc_t loc; + fd_t *fd; + } opendir; + struct { + fop_opendir_cbk_t fn; + int32_t op_ret, op_errno; + fd_t *fd; + } opendir_cbk; + + /* getdents */ + struct { + fop_getdents_t fn; + fd_t *fd; + size_t size; + off_t off; + int32_t flag; + } getdents; + struct { + fop_getdents_cbk_t fn; + int32_t op_ret; + int32_t op_errno; + dir_entry_t entries; + int32_t count; + } getdents_cbk; + + /* setdents */ + struct { + fop_setdents_t fn; + fd_t *fd; + int32_t flags; + dir_entry_t entries; + int32_t count; + } setdents; + struct { + fop_setdents_cbk_t fn; + int32_t op_ret; + int32_t op_errno; + } setdents_cbk; + + /* fsyncdir */ + struct { + fop_fsyncdir_t fn; + fd_t *fd; + int32_t datasync; + } fsyncdir; + struct { + fop_fsyncdir_cbk_t fn; + int32_t op_ret, op_errno; + } fsyncdir_cbk; + + /* statfs */ + struct { + fop_statfs_t fn; + loc_t loc; + } statfs; + struct { + fop_statfs_cbk_t fn; + int32_t op_ret, op_errno; + struct statvfs buf; + } statfs_cbk; + + /* setxattr */ + struct { + fop_setxattr_t fn; + loc_t loc; + dict_t *dict; + int32_t flags; + } setxattr; + struct { + fop_setxattr_cbk_t fn; + int32_t op_ret, op_errno; + } setxattr_cbk; + + /* getxattr */ + struct { + fop_getxattr_t fn; + loc_t loc; + const char *name; + } getxattr; + struct { + fop_getxattr_cbk_t fn; + int32_t op_ret, op_errno; + dict_t *dict; + } getxattr_cbk; + + /* removexattr */ + struct { + fop_removexattr_t fn; + loc_t loc; + const char *name; + } removexattr; + struct { + fop_removexattr_cbk_t fn; + int32_t op_ret, op_errno; + } removexattr_cbk; + + /* lk */ + struct { + fop_lk_t fn; + fd_t *fd; + int32_t cmd; + struct flock lock; + } lk; + struct { + fop_lk_cbk_t fn; + int32_t op_ret, op_errno; + struct flock lock; + } lk_cbk; + + /* inodelk */ + struct { + fop_inodelk_t fn; + loc_t loc; + int32_t cmd; + struct flock lock; + } inodelk; + + struct { + fop_inodelk_cbk_t fn; + int32_t op_ret, op_errno; + } inodelk_cbk; + + /* finodelk */ + struct { + fop_finodelk_t fn; + fd_t *fd; + int32_t cmd; + struct flock lock; + } finodelk; + + struct { + fop_finodelk_cbk_t fn; + int32_t op_ret, op_errno; + } finodelk_cbk; + + /* entrylk */ + struct { + fop_entrylk_t fn; + loc_t loc; + const char *name; + entrylk_cmd cmd; + entrylk_type type; + } entrylk; + + struct { + fop_entrylk_cbk_t fn; + int32_t op_ret, op_errno; + } entrylk_cbk; + + /* fentrylk */ + struct { + fop_fentrylk_t fn; + fd_t *fd; + const char *name; + entrylk_cmd cmd; + entrylk_type type; + } fentrylk; + + struct { + fop_fentrylk_cbk_t fn; + int32_t op_ret, op_errno; + } fentrylk_cbk; + + /* readdir */ + struct { + fop_readdir_t fn; + fd_t *fd; + size_t size; + off_t off; + } readdir; + struct { + fop_readdir_cbk_t fn; + int32_t op_ret, op_errno; + gf_dirent_t entries; + } readdir_cbk; + + /* checksum */ + struct { + fop_checksum_t fn; + loc_t loc; + int32_t flags; + } checksum; + struct { + fop_checksum_cbk_t fn; + int32_t op_ret, op_errno; + uint8_t *file_checksum; + uint8_t *dir_checksum; + } checksum_cbk; + + /* xattrop */ + struct { + fop_xattrop_t fn; + loc_t loc; + gf_xattrop_flags_t optype; + dict_t *xattr; + } xattrop; + struct { + fop_xattrop_cbk_t fn; + int32_t op_ret; + int32_t op_errno; + dict_t *xattr; + } xattrop_cbk; + + /* fxattrop */ + struct { + fop_fxattrop_t fn; + fd_t *fd; + gf_xattrop_flags_t optype; + dict_t *xattr; + } fxattrop; + struct { + fop_fxattrop_cbk_t fn; + int32_t op_ret; + int32_t op_errno; + dict_t *xattr; + } fxattrop_cbk; + } args; +} call_stub_t; + +call_stub_t * +fop_lookup_stub (call_frame_t *frame, + fop_lookup_t fn, + loc_t *loc, + dict_t *xattr_req); + +call_stub_t * +fop_lookup_cbk_stub (call_frame_t *frame, + fop_lookup_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + inode_t *inode, + struct stat *buf, + dict_t *dict); +call_stub_t * +fop_stat_stub (call_frame_t *frame, + fop_stat_t fn, + loc_t *loc); +call_stub_t * +fop_stat_cbk_stub (call_frame_t *frame, + fop_stat_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); +call_stub_t * +fop_fstat_stub (call_frame_t *frame, + fop_fstat_t fn, + fd_t *fd); +call_stub_t * +fop_fstat_cbk_stub (call_frame_t *frame, + fop_fstat_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); +call_stub_t * +fop_chmod_stub (call_frame_t *frame, + fop_chmod_t fn, + loc_t *loc, + mode_t mode); +call_stub_t * +fop_chmod_cbk_stub (call_frame_t *frame, + fop_chmod_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); +call_stub_t * +fop_fchmod_stub (call_frame_t *frame, + fop_fchmod_t fn, + fd_t *fd, + mode_t mode); +call_stub_t * +fop_fchmod_cbk_stub (call_frame_t *frame, + fop_fchmod_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); +call_stub_t * +fop_chown_stub (call_frame_t *frame, + fop_chown_t fn, + loc_t *loc, + uid_t uid, + gid_t gid); + +call_stub_t * +fop_chown_cbk_stub (call_frame_t *frame, + fop_chown_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); + +call_stub_t * +fop_fchown_stub (call_frame_t *frame, + fop_fchown_t fn, + fd_t *fd, + uid_t uid, + gid_t gid); + +call_stub_t * +fop_fchown_cbk_stub (call_frame_t *frame, + fop_fchown_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); + +call_stub_t * +fop_truncate_stub (call_frame_t *frame, + fop_truncate_t fn, + loc_t *loc, + off_t off); + +call_stub_t * +fop_truncate_cbk_stub (call_frame_t *frame, + fop_truncate_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); + +call_stub_t * +fop_ftruncate_stub (call_frame_t *frame, + fop_ftruncate_t fn, + fd_t *fd, + off_t off); + +call_stub_t * +fop_ftruncate_cbk_stub (call_frame_t *frame, + fop_ftruncate_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); + +call_stub_t * +fop_utimens_stub (call_frame_t *frame, + fop_utimens_t fn, + loc_t *loc, + struct timespec tv[2]); + +call_stub_t * +fop_utimens_cbk_stub (call_frame_t *frame, + fop_utimens_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); + +call_stub_t * +fop_access_stub (call_frame_t *frame, + fop_access_t fn, + loc_t *loc, + int32_t mask); + +call_stub_t * +fop_access_cbk_stub (call_frame_t *frame, + fop_access_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +call_stub_t * +fop_readlink_stub (call_frame_t *frame, + fop_readlink_t fn, + loc_t *loc, + size_t size); + +call_stub_t * +fop_readlink_cbk_stub (call_frame_t *frame, + fop_readlink_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + const char *path); + +call_stub_t * +fop_mknod_stub (call_frame_t *frame, + fop_mknod_t fn, + loc_t *loc, + mode_t mode, + dev_t rdev); + +call_stub_t * +fop_mknod_cbk_stub (call_frame_t *frame, + fop_mknod_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + inode_t *inode, + struct stat *buf); + +call_stub_t * +fop_mkdir_stub (call_frame_t *frame, + fop_mkdir_t fn, + loc_t *loc, + mode_t mode); + +call_stub_t * +fop_mkdir_cbk_stub (call_frame_t *frame, + fop_mkdir_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + inode_t *inode, + struct stat *buf); + +call_stub_t * +fop_unlink_stub (call_frame_t *frame, + fop_unlink_t fn, + loc_t *loc); + +call_stub_t * +fop_unlink_cbk_stub (call_frame_t *frame, + fop_unlink_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +call_stub_t * +fop_rmdir_stub (call_frame_t *frame, + fop_rmdir_t fn, + loc_t *loc); + +call_stub_t * +fop_rmdir_cbk_stub (call_frame_t *frame, + fop_rmdir_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +call_stub_t * +fop_symlink_stub (call_frame_t *frame, + fop_symlink_t fn, + const char *linkname, + loc_t *loc); + +call_stub_t * +fop_symlink_cbk_stub (call_frame_t *frame, + fop_symlink_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + inode_t *inode, + struct stat *buf); + +call_stub_t * +fop_rename_stub (call_frame_t *frame, + fop_rename_t fn, + loc_t *oldloc, + loc_t *newloc); + +call_stub_t * +fop_rename_cbk_stub (call_frame_t *frame, + fop_rename_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *buf); + +call_stub_t * +fop_link_stub (call_frame_t *frame, + fop_link_t fn, + loc_t *oldloc, + loc_t *newloc); + +call_stub_t * +fop_link_cbk_stub (call_frame_t *frame, + fop_link_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + inode_t *inode, + struct stat *buf); + +call_stub_t * +fop_create_stub (call_frame_t *frame, + fop_create_t fn, + loc_t *loc, + int32_t flags, + mode_t mode, fd_t *fd); + +call_stub_t * +fop_create_cbk_stub (call_frame_t *frame, + fop_create_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + fd_t *fd, + inode_t *inode, + struct stat *buf); + +call_stub_t * +fop_open_stub (call_frame_t *frame, + fop_open_t fn, + loc_t *loc, + int32_t flags, + fd_t *fd); + +call_stub_t * +fop_open_cbk_stub (call_frame_t *frame, + fop_open_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + fd_t *fd); + +call_stub_t * +fop_readv_stub (call_frame_t *frame, + fop_readv_t fn, + fd_t *fd, + size_t size, + off_t off); + +call_stub_t * +fop_readv_cbk_stub (call_frame_t *frame, + fop_readv_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct iovec *vector, + int32_t count, + struct stat *stbuf); + +call_stub_t * +fop_writev_stub (call_frame_t *frame, + fop_writev_t fn, + fd_t *fd, + struct iovec *vector, + int32_t count, + off_t off); + +call_stub_t * +fop_writev_cbk_stub (call_frame_t *frame, + fop_writev_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct stat *stbuf); + +call_stub_t * +fop_flush_stub (call_frame_t *frame, + fop_flush_t fn, + fd_t *fd); + +call_stub_t * +fop_flush_cbk_stub (call_frame_t *frame, + fop_flush_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +call_stub_t * +fop_fsync_stub (call_frame_t *frame, + fop_fsync_t fn, + fd_t *fd, + int32_t datasync); + +call_stub_t * +fop_fsync_cbk_stub (call_frame_t *frame, + fop_fsync_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +call_stub_t * +fop_opendir_stub (call_frame_t *frame, + fop_opendir_t fn, + loc_t *loc, fd_t *fd); + +call_stub_t * +fop_opendir_cbk_stub (call_frame_t *frame, + fop_opendir_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + fd_t *fd); + +call_stub_t * +fop_getdents_stub (call_frame_t *frame, + fop_getdents_t fn, + fd_t *fd, + size_t size, + off_t off, + int32_t flag); + +call_stub_t * +fop_getdents_cbk_stub (call_frame_t *frame, + fop_getdents_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + dir_entry_t *entries, + int32_t count); + +call_stub_t * +fop_setdents_stub (call_frame_t *frame, + fop_setdents_t fn, + fd_t *fd, + int32_t flags, + dir_entry_t *entries, + int32_t count); + +call_stub_t * +fop_setdents_cbk_stub (call_frame_t *frame, + fop_setdents_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +call_stub_t * +fop_fsyncdir_stub (call_frame_t *frame, + fop_fsyncdir_t fn, + fd_t *fd, + int32_t datasync); + +call_stub_t * +fop_fsyncdir_cbk_stub (call_frame_t *frame, + fop_fsyncdir_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +call_stub_t * +fop_statfs_stub (call_frame_t *frame, + fop_statfs_t fn, + loc_t *loc); + +call_stub_t * +fop_statfs_cbk_stub (call_frame_t *frame, + fop_statfs_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct statvfs *buf); + +call_stub_t * +fop_setxattr_stub (call_frame_t *frame, + fop_setxattr_t fn, + loc_t *loc, + dict_t *dict, + int32_t flags); + +call_stub_t * +fop_setxattr_cbk_stub (call_frame_t *frame, + fop_setxattr_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +call_stub_t * +fop_getxattr_stub (call_frame_t *frame, + fop_getxattr_t fn, + loc_t *loc, + const char *name); + +call_stub_t * +fop_getxattr_cbk_stub (call_frame_t *frame, + fop_getxattr_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + dict_t *value); + +call_stub_t * +fop_removexattr_stub (call_frame_t *frame, + fop_removexattr_t fn, + loc_t *loc, + const char *name); + +call_stub_t * +fop_removexattr_cbk_stub (call_frame_t *frame, + fop_removexattr_cbk_t fn, + int32_t op_ret, + int32_t op_errno); +call_stub_t * +fop_lk_stub (call_frame_t *frame, + fop_lk_t fn, + fd_t *fd, + int32_t cmd, + struct flock *lock); + +call_stub_t * +fop_lk_cbk_stub (call_frame_t *frame, + fop_lk_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + struct flock *lock); + +call_stub_t * +fop_inodelk_stub (call_frame_t *frame, fop_inodelk_t fn, + loc_t *loc, int32_t cmd, struct flock *lock); + +call_stub_t * +fop_finodelk_stub (call_frame_t *frame, fop_finodelk_t fn, + fd_t *fd, int32_t cmd, struct flock *lock); + +call_stub_t * +fop_entrylk_stub (call_frame_t *frame, fop_entrylk_t fn, + loc_t *loc, const char *basename, + entrylk_cmd cmd, entrylk_type type); + +call_stub_t * +fop_fentrylk_stub (call_frame_t *frame, fop_fentrylk_t fn, + fd_t *fd, const char *basename, + entrylk_cmd cmd, entrylk_type type); + +call_stub_t * +fop_inodelk_cbk_stub (call_frame_t *frame, fop_inodelk_cbk_t fn, + int32_t op_ret, int32_t op_errno); + +call_stub_t * +fop_finodelk_cbk_stub (call_frame_t *frame, fop_inodelk_cbk_t fn, + int32_t op_ret, int32_t op_errno); + +call_stub_t * +fop_entrylk_cbk_stub (call_frame_t *frame, fop_entrylk_cbk_t fn, + int32_t op_ret, int32_t op_errno); + +call_stub_t * +fop_fentrylk_cbk_stub (call_frame_t *frame, fop_entrylk_cbk_t fn, + int32_t op_ret, int32_t op_errno); + +call_stub_t * +fop_readdir_stub (call_frame_t *frame, + fop_readdir_t fn, + fd_t *fd, + size_t size, + off_t off); + +call_stub_t * +fop_readdir_cbk_stub (call_frame_t *frame, + fop_readdir_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + gf_dirent_t *entries); + +call_stub_t * +fop_checksum_stub (call_frame_t *frame, + fop_checksum_t fn, + loc_t *loc, + int32_t flags); + +call_stub_t * +fop_checksum_cbk_stub (call_frame_t *frame, + fop_checksum_cbk_t fn, + int32_t op_ret, + int32_t op_errno, + uint8_t *file_checksum, + uint8_t *dir_checksum); + +call_stub_t * +fop_xattrop_stub (call_frame_t *frame, + fop_xattrop_t fn, + loc_t *loc, + gf_xattrop_flags_t optype, + dict_t *xattr); + +call_stub_t * +fop_xattrop_stub_cbk_stub (call_frame_t *frame, + fop_xattrop_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +call_stub_t * +fop_fxattrop_stub (call_frame_t *frame, + fop_fxattrop_t fn, + fd_t *fd, + gf_xattrop_flags_t optype, + dict_t *xattr); + +call_stub_t * +fop_fxattrop_stub_cbk_stub (call_frame_t *frame, + fop_xattrop_cbk_t fn, + int32_t op_ret, + int32_t op_errno); + +void call_resume (call_stub_t *stub); +void call_stub_destroy (call_stub_t *stub); +#endif |