diff options
author | Christopher Faylor <me@cgf.cx> | 2000-02-17 19:38:33 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2000-02-17 19:38:33 +0000 |
commit | 1fd5e000ace55b323124c7e556a7a864b972a5c4 (patch) | |
tree | dc4fcf1e5e22a040716ef92c496b8d94959b2baa /winsup/cygwin/fhandler_zero.cc | |
parent | 369d8a8fd5e887eca547bf34bccfdf755c9e5397 (diff) | |
download | newlib-1fd5e000ace55b323124c7e556a7a864b972a5c4.zip newlib-1fd5e000ace55b323124c7e556a7a864b972a5c4.tar.gz newlib-1fd5e000ace55b323124c7e556a7a864b972a5c4.tar.bz2 |
import winsup-2000-02-17 snapshot
Diffstat (limited to 'winsup/cygwin/fhandler_zero.cc')
-rw-r--r-- | winsup/cygwin/fhandler_zero.cc | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/winsup/cygwin/fhandler_zero.cc b/winsup/cygwin/fhandler_zero.cc new file mode 100644 index 0000000..eb76037 --- /dev/null +++ b/winsup/cygwin/fhandler_zero.cc @@ -0,0 +1,58 @@ +/* fhandler_dev_zero.cc: code to access /dev/zero + + Copyright 2000 Cygnus Solutions. + + Written by DJ Delorie (dj@cygnus.com) + +This file is part of Cygwin. + +This software is a copyrighted work licensed under the terms of the +Cygwin license. Please consult the file "CYGWIN_LICENSE" for +details. */ + +#include <errno.h> +#include "winsup.h" + +fhandler_dev_zero::fhandler_dev_zero (const char *name) + : fhandler_base (FH_ZERO, name) +{ + set_cb (sizeof *this); +} + +int +fhandler_dev_zero::open (const char *path, int flags, mode_t mode = 0) +{ + set_flags (flags); + return 1; +} + +int +fhandler_dev_zero::write (const void *ptr, size_t len) +{ + return len; +} + +int +fhandler_dev_zero::read (void *ptr, size_t len) +{ + memset(ptr, 0, len); + return len; +} + +off_t +fhandler_dev_zero::lseek (off_t offset, int whence) +{ + return 0; +} + +int +fhandler_dev_zero::close (void) +{ + return 0; +} + +void +fhandler_dev_zero::dump () +{ + paranoid_printf("here, fhandler_dev_zero"); +} |