Messages in this thread | | | Date | Thu, 9 Oct 2008 14:10:08 +0200 | From | "Michael Kerrisk" <> | Subject | dup2() vs dup3() inconsistency when |
| |
Al,
your 2008-07-26 commit 6c5d0512a091480c9f981162227fdb1c9d70e555 for fs/fcntl.c:sys_dup3 contains
+ if (unlikely(oldfd == newfd)) + return -EINVAL;
This makes dup2() and dup3() differ with respect to the oldfd==newfd case (dup2() becomes a no-op, just returning oldfd, dup3() gives the EINVAL error.
Your commit log doesn't explain the rationale for this change. What is it? (I could guess that it is to error on a case that may be a user programming error, but I want to check this with you, so that I add the right text to the man page.)
Cheers,
Michael
-- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ git://git.kernel.org/pub/scm/docs/man-pages/man-pages.git man-pages online: http://www.kernel.org/doc/man-pages/online_pages.html Found a bug? http://www.kernel.org/doc/man-pages/reporting_bugs.html
| |