lkml.org 
[lkml]   [2008]   [Oct]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: dup2() vs dup3() inconsistency when
On Thu, Oct 09, 2008 at 01:31:39PM -0700, Ulrich Drepper wrote:
> H. Peter Anvin wrote:
> > The dup2() behavior comes from the logical consequence of dup2()'s
> > "close on reuse"; one would think it would be logical for dup3() to
> > behave the same way.
>
> No. We deliberately decided on this change. Otherwise, what is the
> result of dup3(fd, fd, O_CLOEXEC)? There is no reason to use
> dup2(fd,fd), so why the hell somebody wants to defend this is beyond me.

The reason is: application programmers expect it to behave that way.
The interface is mostly targeted for typical application programmers,
and consistency decreases bugs. In this respect, it would be a good
idea for dup3() to have the same semantics. Doing that might not make
practical sense, but it is secondary to obviousness.

--
Heikki Orsila
heikki.orsila@iki.fi
http://www.iki.fi/shd


\
 
 \ /
  Last update: 2008-10-10 16:09    [W:0.136 / U:0.028 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site