diff options
author | Lasse Collin <lasse.collin@tukaani.org> | 2015-04-20 19:59:18 +0300 |
---|---|---|
committer | Lasse Collin <lasse.collin@tukaani.org> | 2015-04-20 20:17:48 +0300 |
commit | 6bd0349c58451b13442e8f463e35de83548bf985 (patch) | |
tree | 2c9ffc2992ce7e78c7739e00bbb317deea3fa14f | |
parent | xz: Fix the Capsicum rights on user_abort_pipe. (diff) | |
download | xz-6bd0349c58451b13442e8f463e35de83548bf985.tar.xz |
Revert "xz: Use pipe2() if available."
This reverts commit 7a11c4a8e5e15f13d5fa59233b3172e65428efdd.
It is a problem when libc has pipe2() but the kernel is too
old to have pipe2() and thus pipe2() fails. In xz it's pointless
to have a fallback for non-functioning pipe2(); it's better to
avoid pipe2() completely.
Thanks to Michael Fox for the bug report.
-rw-r--r-- | configure.ac | 4 | ||||
-rw-r--r-- | src/xz/file_io.c | 9 |
2 files changed, 3 insertions, 10 deletions
diff --git a/configure.ac b/configure.ac index aa68e33b..970712dd 100644 --- a/configure.ac +++ b/configure.ac @@ -650,8 +650,8 @@ gl_GETOPT # Find the best function to set timestamps. AC_CHECK_FUNCS([futimens futimes futimesat utimes utime], [break]) -# These are nice to have but not mandatory. -AC_CHECK_FUNCS([posix_fadvise pipe2]) +# This is nice to have but not mandatory. +AC_CHECK_FUNCS([posix_fadvise]) TUKLIB_PROGNAME TUKLIB_INTEGER diff --git a/src/xz/file_io.c b/src/xz/file_io.c index 8a5e0453..e5a29925 100644 --- a/src/xz/file_io.c +++ b/src/xz/file_io.c @@ -95,13 +95,7 @@ io_init(void) // we are root. warn_fchown = geteuid() == 0; - // Create a pipe for the self-pipe trick. If pipe2() is available, - // we can avoid the fcntl() calls. -# ifdef HAVE_PIPE2 - if (pipe2(user_abort_pipe, O_NONBLOCK)) - message_fatal(_("Error creating a pipe: %s"), - strerror(errno)); -# else + // Create a pipe for the self-pipe trick. if (pipe(user_abort_pipe)) message_fatal(_("Error creating a pipe: %s"), strerror(errno)); @@ -114,7 +108,6 @@ io_init(void) message_fatal(_("Error creating a pipe: %s"), strerror(errno)); } -# endif #endif #ifdef __DJGPP__ |