Mailing-List: contact cygwin-help@sourceware.cygnus.com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe@sources.redhat.com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin@sources.redhat.com>
List-Help: <mailto:cygwin-help@sources.redhat.com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner@sources.redhat.com
Delivered-To: mailing list cygwin@sources.redhat.com
Message-ID: <3B4B6398.B524F174@mvista.com>
Date: Tue, 10 Jul 2001 13:20:40 -0700
From: Michael Eager <eager@mvista.com>
Organization: MontaVista Software, Inc.
X-Mailer: Mozilla 4.75 [en] (X11; U; Linux 2.2.16-22 i686)
X-Accept-Language: en
MIME-Version: 1.0
To: Randall R Schulz <rrschulz@cris.com>
CC: Michael Eager <eager@eagercon.com>, Cygwin <cygwin@cygwin.com>
Subject: Re: Error in access() with long file names
References: <5.1.0.14.2.20010710122511.02362e48@pop3.cris.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

One of the systems that I've checked has both FAT32 and NTFS drives.
The problem occurs when referencing either drive, either by default
(i.e., cd to a directory on the drive), or explicitly. 

Randall R Schulz wrote:
> 
> Michael,
> 
> You didn't say whether you're using NTFS, but if so, the : at the end might
> be tripping up either Cygwin or, conceivable, Windows. The name you gave
> takes the form of a file stream (and independent sub-file, a kind of
> generalized file "fork" if you're familiar with the Macintosh file
> systems). This is the case owing to the presence of the colon with more
> than one character to its left.
> 
> I tend to doubt the slash is allowable after the colon, but I'm not sure.
> 
> It's not that I think access() should return true for this name, but just
> that I wanted to point out the possibility that you're hitting something
> relatively obscure. As I said, it's only supported in NTFS, not in FAT file
> systems.
> 
> Randall Schulz
> Mountain View, CA USA
> 
> At 09:39 2001-07-10, Michael Eager wrote:
> >Using the most recent version of Cygwin.
> >
> >The access function return success when given a long string argument
> >which does not represent a valid file.  There is some sensitivity to the
> >characters in the string.  Removing the colon (and perhaps some other
> >characters) in the example program below gives correct results.
> >
> >Anyone know of a fix?
> >
> >===================================
> >
> >#include <stdio.h>
> >#include <unistd.h>
> >
> >char name[] =
> >  "aaaaaaaaaabbbbbbbbbbccccccccccddddddddddeeeeeeeeeeffffffffffgggggggggghhh"
> >  "hhhhhhhiiiiiiiiiijjjjjjjjjjkkkkkkkkkkkllllllllllmmmmmmmmmmnnnnnnnnnnooooo"
> >  "oooooppppppppppqqqqqqqqqqrrrrrrrrrrssssssssssttttttttttuuuuuuuuuuvvvvvvvv"
> >  "vvwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyzzzzzzzzzz01234567890:/";
> >
> >int main()
> >{
> >   if (access (name, R_OK) == 0)
> >     printf ("%s is readable\n", name);
> >   else
> >     printf ("%s is NOT readable\n", name);
> >
> >   return 0;
> >}
> >
> >
> >--
> >Michael Eager   Eager Consulting     eager@eagercon.com
> >1960 Park Blvd., Palo Alto, CA 94306  650-325-8077

--
Michael Eager     eager@mvista.com	408-328-8426	
MontaVista Software, Inc. 1237 E. Arques Ave., Sunnyvale, CA  94085

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

