delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/03/06/10:27:56

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Date: Thu, 6 Mar 2008 16:27:05 +0100
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: bug with touch t/
Message-ID: <20080306152705.GU18407@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <loom DOT 20080304T214047-23 AT post DOT gmane DOT org> <20080305183640 DOT GI18407 AT calimero DOT vinschen DOT de> <47CFEE38 DOT 5040905 AT byu DOT net> <20080306132748 DOT GP18407 AT calimero DOT vinschen DOT de> <47CFF263 DOT 90804 AT byu DOT net> <20080306134546 DOT GQ18407 AT calimero DOT vinschen DOT de> <47CFF979 DOT 6080201 AT byu DOT net> <20080306142614 DOT GR18407 AT calimero DOT vinschen DOT de> <loom DOT 20080306T144346-788 AT post DOT gmane DOT org>
MIME-Version: 1.0
In-Reply-To: <loom.20080306T144346-788@post.gmane.org>
User-Agent: Mutt/1.5.16 (2007-06-09)
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On Mar  6 14:56, Eric Blake wrote:
> Corinna Vinschen <corinna-cygwin <at> cygwin.com> writes:
> 
> > 
> > But the flags are not O_RDONLY|O_CREAT.  They are O_WRONLY|O_CREAT.
> 
> I still think Linux is wrong - t/ is not an existing directory, so you can't 
> claim that an attempt was made to open an existing directory with O_WRONLY.  
> But I guess it is a bit ambiguous, since if t/ did exist, then opening t/. 
> should indeed fail with EISDIR; at any rate, it is certainly more efficient to 
> blindly reject O_WRONLY due to the trailing slash without even checking for the 
> existence of t.

In our case I added a special case to emit EISDIR, otherwise we would
get ENOENT automatically (that's what STATUS_OBJECT_NAME_INVALID gets
converted to).  However, I'm somewhat puzzled that you used that bash
example:

  $ : > t/
  bash: t/: Is a directory.

If what you said is right, and if I revert the change to fhandler.cc,
we would get a ENOENT in that case, too.  And given your arguments,
that should be correct.

Do you agree?

> Maybe it's worth asking the Austin Group for clarification?  I already asked 

Maybe, but the upcoming 1.5.25 bugfix release will not be affected
by this.

> > Which chapter in the austin doc are you refering to?  I can't find
> > this re-wording for some reason.
> 
> The rewording for path resolution is in section XBD 4.12 (page 109 in draft 4 
> of the 200x spec).

I have only Draft 3 here, but I see what you mean.  Nevertheless,
what about the `: > t/' case above?


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019