> From: Eric Blake [mailto:ebl...@redhat.com]
> Sent: Friday, December 16, 2011 2:42 PM
> To: Joachim Schmitz
> Cc: 'Jim Meyering'; 10...@debbugs.gnu.org; egg...@cs.ucla.edu; bug-
> gnu...@gnu.org
> Subject: Re: bug#10305: coreutils-8.14, "rm -r" fails with EBADF
> 
> On 12/16/2011 06:02 AM, Joachim Schmitz wrote:
> > Hmm, I can dup() an fd for a directory if or had been open()'d
> > O_RDONLY, but not if opened O_WRONLY or O_RDWR, I'll get an EISDIR
> from open() then.
> 
> But you shouldn't be able to open() a directory O_WRONLY or O_RDWR in the
> first place, under POSIX. 

Right.

> Is this a bug in our open() wrapper for permitting a
> bad open() on a directory, which then renders the fd un-dup()able?  Or is
it
> really some other O_* flag causing the issue?

It is not O_NOCTTY or O_NONBLOCK and the others (O_SEARCH, O_DIRECTORY,
O_NOFOLLOW, O_NOATIME) don't exist here.

Bye, Jojo


Reply via email to