gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] Cross Platform Path issues


From: Robert Collins
Subject: Re: [Gnu-arch-users] Cross Platform Path issues
Date: Wed, 24 Sep 2003 07:03:44 +1000

On Wed, 2003-09-24 at 01:51, Tom Lord wrote:
>     > From: Michael Grubb <address@hidden>
> 
>     > There is a discrepancy of allowed path lengths between the cygwin mkdir 
> and 
>     > the native linux mkdir command.  The linux command will take 4105 
> character 
>     > path names, the windows and cygwin will only take around 280 characters.
>     > This is not to say that paths may not be deeper than what is allowed on 
> a 
>     > single command only commands that must create very deep trees should do 
> so 
>     > with this limit in mind (via chdir).  The problem is the same for both 
>     > platforms it is just highly unlikely one will experience this behavior 
> on a 
>     > UNIX machine.  I'm not entirely sure as to the best way to fix this, I 
>     > would be happy to give it a try though I'm little more than a hacker 
> when 
>     > it comes to C.  Ideas, anyone ... anyone?
> 
> Thank you for explaining the issue more clearly than I have heard it
> explained in the past.  I was under the impression that the 280
> character limit was a limit on the depth of file system in cygwin.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/createdirectory.asp

Cygwin uses the A variation - the win9x compatible call.

MAX_PATH is used throughout the cygwin source code. Even if chaining
through with shorter relative paths 'work's' (which I doubt), the file
name canonicalisation process used in mount table resolution and symlink
processing will still fail.

Your impression that 280 characters is the limit, is correct.

And for the Nth time: this can be solved, and the best place is almost
certainly in cygwin itself.

Rob
-- 
GPG key available at: <http://members.aardvark.net.au/lifeless/keys.txt>.

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

[Prev in Thread] Current Thread [Next in Thread]