This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Error in access() with long file names


On Tue, Jul 10, 2001 at 01:20:40PM -0700, Michael Eager wrote:
> 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. 

That's not the problem. It's definitely the usage of the colon and
the slash which are not allowed in filenames other than as drive/stream
separator resp. path separator. This is documented in MSDN as well.
And it actually already leads to confusion in Cygwin.

Corinna

> 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/

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.

--
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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]