This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: [bugreport] Two slashes should not indicate remote machine or special directory
On Sun, Jan 25, 2009 at 03:30:29PM +0100, Sjors Gielen wrote:
> Eric Blake schreef:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>> According to Sjors Gielen on 1/25/2009 6:46 AM:
>>> Hey all,
>>>
>>> In Cygwin (the CVS version), it seems paths starting with two slashes
>>> are "special paths" for accessing remote machines or bypassing the mount
>>> table.
>>>
>>> This however is incompatible with Linux, where i.e. //etc is a valid
>>> path. See, for example: (`ls` indicators removed for readability)
>> Not only is it perfectly compatible with Linux, but it is allowed by
>> POSIX. This is a design decision that all portable programs must be aware
>> of - you cannot blindly use '//' to mean '/', and not just because of
>> cygwin.
>> http://www.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_266
>> http://www.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_12
>> "A pathname that begins with two successive <slash> characters may be
>> interpreted in an implementation-defined manner, although more than two
>> leading <slash> characters shall be treated as a single <slash>
>> character."
>>> Therefore, I'm suggesting to remove "//" as a
>>> special path from conv_to_win32_path.
>> Won't happen. We've intentionally defined it as a synonym for Windows
>> \\server\share notation.
>
> I figured this was by design, but I didn't know there was an explicit
> exception in POSIX for this.
> However, as I'm sure you're aware, there are a lot of Linux applications
> which depend on, for example, //etc being the same as /etc. These all have
> to be patched to use ///etc or /etc.
>
> How much of Cygwin will be broken if we remove //remoteserver as an
> equivalent to Windows \\remoteserver? Wouldn't it be a better solution to
> provide an alternative for //remoteserver, i.e. /cygdrive/net/remoteserver
> or maybe even net://remoteserver or smb://remoteserver? This would fix both
> the problem with Linux compatibility, and still leave this feature in
> Cygwin.
We are not going to change this very long standing Cygwin behavior. It is not
a bug.
cgf
--
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/