s3: VFS: default: Remove fallback if we don't have HAVE_PREAD set. Samba doesn't...
authorJeremy Allison <jra@samba.org>
Mon, 30 Apr 2018 16:50:04 +0000 (09:50 -0700)
committerRalph Boehme <slow@samba.org>
Wed, 2 May 2018 17:33:13 +0000 (19:33 +0200)
Start of the changes to remove synchronous VFS read.

Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
source3/modules/vfs_default.c

index 6de0329..6e8a996 100644 (file)
@@ -641,28 +641,8 @@ static ssize_t vfswrap_pread(vfs_handle_struct *handle, files_struct *fsp, void
        }
 
 #else /* HAVE_PREAD */
-       off_t   curr;
-       int lerrno;
-
-       curr = SMB_VFS_LSEEK(fsp, 0, SEEK_CUR);
-       if (curr == -1 && errno == ESPIPE) {
-               /* Maintain the fiction that pipes can be seeked (sought?) on. */
-               result = SMB_VFS_READ(fsp, data, n);
-               fsp->fh->pos = 0;
-               return result;
-       }
-
-       if (SMB_VFS_LSEEK(fsp, offset, SEEK_SET) == -1) {
-               return -1;
-       }
-
-       errno = 0;
-       result = SMB_VFS_READ(fsp, data, n);
-       lerrno = errno;
-
-       SMB_VFS_LSEEK(fsp, curr, SEEK_SET);
-       errno = lerrno;
-
+       errno = ENOSYS;
+       result = -1;
 #endif /* HAVE_PREAD */
 
        return result;