Esempio n. 1
0
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;
}
Esempio n. 2
0
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);
}
Esempio n. 3
0
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);
}