From 265c3c71a82906de252637ecbdacf23a99b2ea0c Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 3 Jun 2016 14:20:50 +0300 Subject: Add fdnull() --- butl/fdstream.cxx | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'butl/fdstream.cxx') diff --git a/butl/fdstream.cxx b/butl/fdstream.cxx index d99be70..13becfa 100644 --- a/butl/fdstream.cxx +++ b/butl/fdstream.cxx @@ -5,9 +5,11 @@ #include #ifndef _WIN32 +# include // open(), O_RDWR # include // close(), read(), write() #else -# include // _close(), _read(), _write(), _setmode() +# include // _close(), _read(), _write(), _setmode(), _sopen() +# include // _SH_DENYNO # include // _fileno(), stdin, stdout, stderr # include // _O_BINARY, _O_TEXT #endif @@ -153,6 +155,12 @@ namespace butl return close (fd) == 0; } + int + fdnull () noexcept + { + return open ("/dev/null", O_RDWR); + } + fdtranslate fdmode (int, fdtranslate) { @@ -185,6 +193,12 @@ namespace butl return _close (fd) == 0; } + int + fdnull () noexcept + { + return _sopen ("nul", _O_RDWR, _SH_DENYNO); + } + fdtranslate fdmode (int fd, fdtranslate m) { -- cgit v1.1