On Feb 20 10:08, Wayne Davison wrote: > 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.
Ok, ok, ok. Since the Cygwin getopt is almost vanilla NetBSD, there's at least one OS on which getopt behaves identically. But I can't stand the idea to discuss this over and over again in future. I've changed Cygwin's getopt to the OpenBSD version which has argument permutation switched on by default for getopt_Long and switched off by default for getopt. That should do it. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Developer mailto:[EMAIL PROTECTED] Red Hat, Inc. -- 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/