From 7636b58590621af3c341c3eb37a017e0e6598d3f Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Mon, 7 Aug 2006 19:29:14 +0000 Subject: * autoload.cc (NtSetInformationFile): Define. * cygwin.din: Export posix_fadvise and posix_fallocate. * fhandler.cc (fhandler_base::fadvise): New method. (fhandler_base::ftruncate): Add allow_truncate parameter. * fhandler.h (class fhandler_base): Add fadvise method. Accomodate new parameter to ftruncate. (class fhandler_pipe): Add fadvise and ftruncate methods. (class fhandler_disk_file): Add fadvise method. Accomodate new parameter to ftruncate. * fhandler_disk_file.cc (fhandler_disk_file::fadvise): New method. (fhandler_disk_file::ftruncate): Accomodate new allow_truncate parameter. Set EOF using NtSetInformationFile on NT. * ntdll.h (struct _FILE_END_OF_FILE_INFORMATION): Define. (NtSetInformationFile): Declare. * pipe.cc (fhandler_pipe::fadvise): New method. (fhandler_pipe::ftruncate): Ditto. * syscalls.cc (posix_fadvise): New function. (posix_fallocate): Ditto. (ftruncate64): Accomodate second parameter to fhandler's ftruncate method. * include/fcntl.h: Add POSIX_FADV_* flags. Add declarations of posix_fadvise and posix_fallocate. * include/cygwin/version.h: Bump API minor number. --- winsup/cygwin/pipe.cc | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'winsup/cygwin/pipe.cc') diff --git a/winsup/cygwin/pipe.cc b/winsup/cygwin/pipe.cc index a6171f2f9..d56b32aff 100644 --- a/winsup/cygwin/pipe.cc +++ b/winsup/cygwin/pipe.cc @@ -151,6 +151,20 @@ fhandler_pipe::lseek (_off64_t offset, int whence) return -1; } +int +fhandler_pipe::fadvise (_off64_t offset, _off64_t length, int advice) +{ + set_errno (ESPIPE); + return -1; +} + +int +fhandler_pipe::ftruncate (_off64_t length, bool allow_truncate) +{ + set_errno (allow_truncate ? EINVAL : ESPIPE); + return -1; +} + void fhandler_pipe::set_close_on_exec (bool val) { -- cgit v1.2.3