static ssize_t vfsx_read(vfs_handle_struct *handle, files_struct *fsp, int fd, void *data, size_t n) { ssize_t result = -1; int count; char buf[VFSX_MSG_OUT_SIZE]; count = snprintf(buf, VFSX_MSG_OUT_SIZE, "read:%s:%s:%s", fsp->conn->user, fsp->conn->origpath, fsp->fsp_name); if (vfsx_execute(buf, count) == VFSX_SUCCESS_TRANSPARENT) { result = SMB_VFS_NEXT_READ(handle, fsp, fd, data, n); } return result; }
static ssize_t cprime_read( vfs_handle_struct * handle, files_struct * fsp, int fd, void * data, size_t count) { SMB_OFF_T offset; offset = SMB_VFS_LSEEK(fsp, fd, 0, SEEK_CUR); if (offset >= 0 && g_readbuf) { prime_cache(handle, fsp, fd, offset, count); SMB_VFS_LSEEK(fsp, fd, offset, SEEK_SET); } return SMB_VFS_NEXT_READ(handle, fsp, fd, data, count); }
static ssize_t skel_vfs_read(vfs_handle_struct *handle, files_struct *fsp, void *data, size_t n) { return SMB_VFS_NEXT_READ(handle, fsp, data, n); }