summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/fhandler_zero.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2005-02-23 12:30:31 +0000
committerCorinna Vinschen <corinna@vinschen.de>2005-02-23 12:30:31 +0000
commite5ef74dfb2c6b8e00daf6afc7ac8895c626a59d9 (patch)
tree1bda12cfd8321f9022267e7a5af11928c510ed57 /winsup/cygwin/fhandler_zero.cc
parent4add0a4e2f51e0e5f2371fa8f578a6785cb11e2e (diff)
downloadcygnal-e5ef74dfb2c6b8e00daf6afc7ac8895c626a59d9.tar.gz
cygnal-e5ef74dfb2c6b8e00daf6afc7ac8895c626a59d9.tar.bz2
cygnal-e5ef74dfb2c6b8e00daf6afc7ac8895c626a59d9.zip
* devices.h: Switch FH_ZERO and FH_PORT as on Linux. Add FH_FULL.
* devices.in: Add /dev/full. * devices.cc: Regenerate. * dtable.cc (build_fh_pc): Add FH_FULL. * fhandler.cc (fhandler_base::fstat): Set FH_FULL permission bits correctly. * fhandler_zero.cc (fhandler_dev_zero::write): Set errno to ENOSPC and return -1 if device is FH_FULL.
Diffstat (limited to 'winsup/cygwin/fhandler_zero.cc')
-rw-r--r--winsup/cygwin/fhandler_zero.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/winsup/cygwin/fhandler_zero.cc b/winsup/cygwin/fhandler_zero.cc
index 6e1d31e01..906898604 100644
--- a/winsup/cygwin/fhandler_zero.cc
+++ b/winsup/cygwin/fhandler_zero.cc
@@ -34,6 +34,11 @@ fhandler_dev_zero::open (int flags, mode_t)
int
fhandler_dev_zero::write (const void *, size_t len)
{
+ if (get_device () == FH_FULL)
+ {
+ set_errno (ENOSPC);
+ return -1;
+ }
return len;
}