Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm 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 Date: Fri, 20 Feb 2004 10:08:47 -0800 From: Wayne Davison To: cygwin AT cygwin DOT com Subject: Re: 2004-Feb-17 snapshot change ssh option parsing behavior Message-ID: <20040220180847.GA8982@blorf.net> References: <1077299200 DOT 1982 DOT ezmlm AT cygwin DOT com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040217212425.GB18953@cygbert.vinschen.de> User-Agent: Mutt/1.5.5.1+cvs20040105i X-IsSubscribed: yes Corinna Vinschen wrote: > We're using the latest plain BSD getopt() now. It's permuting the > options by default. This was switched off by default in Cygwin so > far. > > Typically you should quote the command you send to the remote host: > > ssh somehost '/bin/bash --login -c date' This is not something that other OSes require, and programs such as rsync are broken by this change. While trying to work around this problem, I tried using a remote-shell option of "ssh --" with rsync, but ssh still doesn't do the right thing with that either. You can observe the mangled result by inserting an "echo" in the command that rsync runs: % ssh -- host echo rsync --server -vlogDtpr . destdir/ rsync -vlogDtpr . destdir/ Notice how the "--server" option was dropped! Without the echo, this results in starting up a remote local-copy rsync command. I'm just lucky that I hadn't specified a --delete option, or this bug could have devestated my home dir on the remote system. Reordering the two options above causes ssh to switch to verbose mode and try to log-in as "ogDtpr", so it appears to be erroneously parsing that first rsync option even when "--" is used (which may well be a bug in the BSD getopt routine). Yes, setting the POSIXLY_CORRECT environment variable fixes this. I think that ssh should not reorder its options -- it's just too disruptive of a change in behavior. ..wayne.. -- 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/