X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fdup-safer.c;h=c20310785af12b9da28ad8ee946179346799909a;hb=a3232e87aa43983f16befedc0b6311ac02aceacb;hp=2af8b6a47869c869101763aa8c03ec5495e94567;hpb=14449a1dacca44c4f933d5fc207c7fa56e6c0fb7;p=gnulib.git diff --git a/lib/dup-safer.c b/lib/dup-safer.c index 2af8b6a47..c20310785 100644 --- a/lib/dup-safer.c +++ b/lib/dup-safer.c @@ -1,7 +1,6 @@ /* Invoke dup, but avoid some glitches. - Copyright (C) 2001, 2004, 2005, 2006, 2009 Free Software - Foundation, Inc. + Copyright (C) 2001, 2004-2006, 2009-2013 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 @@ -31,42 +30,5 @@ int dup_safer (int fd) { -#if defined F_DUPFD && !REPLACE_FCHDIR return fcntl (fd, F_DUPFD, STDERR_FILENO + 1); -#else - /* fd_safer calls us back, but eventually the recursion unwinds and - does the right thing. */ - return fd_safer (dup (fd)); -#endif } - -#if GNULIB_CLOEXEC - -# include "cloexec.h" - -# ifndef O_CLOEXEC -# define O_CLOEXEC 0 -# endif - -/* Like dup, but do not return STDIN_FILENO, STDOUT_FILENO, or - STDERR_FILENO. If FLAG contains O_CLOEXEC, behave like - fcntl(F_DUPFD_CLOEXEC) rather than fcntl(F_DUPFD). */ - -int -dup_safer_flag (int fd, int flag) -{ - if (flag & O_CLOEXEC) - { -# if defined F_DUPFD_CLOEXEC && !REPLACE_FCHDIR - return fcntl (fd, F_DUPFD_CLOEXEC, STDERR_FILENO + 1); -# else - /* fd_safer_flag calls us back, but eventually the recursion - unwinds and does the right thing. */ - fd = dup_cloexec (fd); - return fd_safer_flag (fd, flag); -# endif - } - return dup_safer (fd); -} - -#endif