X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Mon, 6 Dec 2010 12:34:29 +0100 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: cygpath -w for non-existent server Message-ID: <20101206113429.GC17176@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <20101204150728 DOT GB26471 AT calimero DOT vinschen DOT de> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20101204150728.GB26471@calimero.vinschen.de> User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Hi Andy, On Dec 4 16:07, Corinna Vinschen wrote: > On Dec 4 06:35, Andy Koppe wrote: > > With non-existent server foo, and Cygwin 1.7.7 or the latest 1.7.8 snapshot: > > > > $ cygpath -w //foo/bar > > \\foo\bar > > > > $ cygpath -w //foo > > cygpath: error converting "//foo" - No such file or directory > > > > Is that as intended? > > > > Also, both only return after a few seconds delay, so I assume they > > trigger network accesses. Is that necessary? > > Probably yes, due to the way SMB works. The "No such file or directory" > seems wrong though. I'll investigate next week. Done. The behaviour is perfectly valid. - "//foo/bar" requires to access the path, which in turn triggers an SMB request on the wire. This takes a couple of seconds within Windows itself, even if the DNS request returns immediately that the server doesn't exist. NetBIOS? Anyway, there's nothing Cygwin can do about it. - "//foo" is a virtual path, valid only in Cygwin. You can't access "\\foo" in the Win32 API using file or directory access functions. It just doesn't exist as a path. UNC paths are only valid with at least two path components as in "\\server\share". Since "//foo" is a virtual path, there's no Win32 equivalent. So, from the Windows perspective there's "No such file or directory". Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple