Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2006-08-07 23:29:14 +0400
committerCorinna Vinschen <corinna@vinschen.de>2006-08-07 23:29:14 +0400
commit7636b58590621af3c341c3eb37a017e0e6598d3f (patch)
tree7105f91a629f9f9d14224b6405442cf841cf875f /winsup/cygwin/pipe.cc
parent76ddec15abf7557374341c96f999b4965bc10d8d (diff)
* 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.
Diffstat (limited to 'winsup/cygwin/pipe.cc')
-rw-r--r--winsup/cygwin/pipe.cc14
1 files changed, 14 insertions, 0 deletions
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)
{