www.delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
X-SWARE-Spam-Status: | No, hits=-1.8 required=5.0 tests=AWL,BAYES_00,SPF_PASS |
X-Spam-Check-By: | sourceware.org |
Message-ID: | <497C7785.3000605@dazjorz.com> |
Date: | Sun, 25 Jan 2009 15:30:29 +0100 |
From: | Sjors Gielen <mailinglist AT dazjorz DOT com> |
User-Agent: | Thunderbird 2.0.0.19 (Windows/20081209) |
MIME-Version: | 1.0 |
To: | Eric Blake <ebb9 AT byu DOT net> |
CC: | cygwin AT cygwin DOT com, debian-kcygwin-devel AT lists DOT sourceforge DOT net, |
Ed Schouten <ed AT 80386 DOT nl> | |
Subject: | Re: [bugreport] Two slashes should not indicate remote machine or special directory |
References: | <497C6D52 DOT 5050504 AT dazjorz DOT com> <497C72F8 DOT 8040503 AT byu DOT net> |
In-Reply-To: | <497C72F8.8040503@byu.net> |
X-IsSubscribed: | yes |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Id: | <cygwin.cygwin.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 |
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. - Sjors -- 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/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |