diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2006-08-09 23:42:26 +0000 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2006-08-09 23:42:26 +0000 |
commit | 93f90065f31c35780e2dc3d6b7c987677d9bc14e (patch) | |
tree | ba198c539d289ba716e4de9f420e58a61e214a84 /lib/pipe-safer.c | |
parent | d24265f9659d21c8e89f1f21cf3b774c7c120afe (diff) | |
download | coreutils-93f90065f31c35780e2dc3d6b7c987677d9bc14e.tar.xz |
Sync from gnulib.
Diffstat (limited to 'lib/pipe-safer.c')
-rw-r--r-- | lib/pipe-safer.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/pipe-safer.c b/lib/pipe-safer.c index fb02d7217..646cd5dab 100644 --- a/lib/pipe-safer.c +++ b/lib/pipe-safer.c @@ -1,5 +1,5 @@ /* Invoke pipe, but avoid some glitches. - Copyright (C) 2005 Free Software Foundation, Inc. + Copyright (C) 2005, 2006 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -24,13 +24,16 @@ #include "unistd-safer.h" #include <unistd.h> +#include <errno.h> /* Like pipe, but ensure that neither of the file descriptors is - STDIN_FILENO, STDOUT_FILENO, or STDERR_FILENO. */ + STDIN_FILENO, STDOUT_FILENO, or STDERR_FILENO. Fail with ENOSYS on + platforms that lack pipe. */ int pipe_safer (int fd[2]) { +#if HAVE_FUNC_PIPE int fail = pipe (fd); if (fail) return fail; @@ -47,4 +50,8 @@ pipe_safer (int fd[2]) } return 0; +#else /* ! HAVE_FUNC_PIPE */ + errno = ENOSYS; + return -1; +#endif } |