Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Date: Tue, 24 Jul 2001 13:45:55 -0400 From: Christopher Faylor To: cygwin AT cygwin DOT com Subject: Re: SFTP server when / is c:\ Message-ID: <20010724134555.C781@redhat.com> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <911C684A29ACD311921800508B7293BA010A8AAE AT cnmail> <4 DOT 3 DOT 1 DOT 2 DOT 20010724125039 DOT 02347be0 AT pop DOT ma DOT ultranet DOT com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.3.11i In-Reply-To: <4.3.1.2.20010724125039.02347be0@pop.ma.ultranet.com>; from lhall@rfk.com on Tue, Jul 24, 2001 at 12:51:53PM -0400 On Tue, Jul 24, 2001 at 12:51:53PM -0400, Larry Hall (RFK Partners, Inc) wrote: >At 12:44 PM 7/24/2001, Mark Bradshaw wrote: >>SFTP server has some unfortunate logic that occurs when you try to ls, get, >>or put things in root (/). It's got logic all over the place that creates >>paths that start with "//". Cygwin doesn't like to deal with these kind of >>paths. This causes ls, get, and put (at least) to not work in /. >> >>When you do an ls (for example) sftp server creates pathnames to pass back. >>It does this by combining the path + "/" + filename. This works great as >>long as the path doesn't includes a final /, which it normally doesn't. >>However, when you switch to / the path is / (obviously). The ls would then >>end up coming back with things like //., //.., //cygwin.bat, etc. >> >>Seems that unix machines deal with these double slash paths, but cygwin >>doesn't? Am I on track here. Either way, I'm wondering which direction is >>the best to attempt a patch with. Patch sftp-server.c in lots of spots, or >>cygwin in (?) spots? > >An argument could be made either way but I would suggest that its best to >make SFTP as portable as possible. In that context, patching SFTP is >best. I don't see any argument for patching cygwin. A '//' means something special to cygwin, it is allowed to mean something special, and cygwin is not the only system that interprets '//' as special. I don't see how you could possibly patch cygwin to deal with this. Obviously you can't do something like "Does //foo exist? Yes. Ok, I'll use that rather than use the //foo share." Or, I hope it is obvious why this logic is flawed. cgf -- 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/