[darcs-devel] darcs and ssh issues
Eric Y. Kow
eric.kow at gmail.com
Tue Nov 21 07:18:23 PST 2006
Hi all,
As you might have noticed, we've been experiencing a spate of
SSH-related issues ever since the control master feature that I
implemented. I could use some help thinking about one of the issues (#5
below). Please consider this to be an SSH report accompanied by a
request for brain-power and testing.
I invite you to reply to this message. There is also the page
http://wiki.darcs.net/index.html/SSHNotes
which might be handy because you can make tables on it
Summary of problems
-------------------
1. strange output:
* plink: unknown option "-O" - harmless, but fixed from 1.0.9 and up
* openssh:
2. ssh not being called right
* -q being sent to ssh (which breaks plink) - fixed
* using stdin for sftp batch instead of -b
this is a tough one because using stdin breaks psftp and
using -b breaks openssh's sftp -- not fixing yet
because it seems you can't use PuTTY without pageant
anyway)
3. --disable-ssh-cm not working
* was not being recognised at all - fixed in 1.0.9 up
* darcs send did not support --disable-ssh-cm - fixed with my new patch
* was not interpreting it from defaults file - fixed by Tommy
4. darcs-ssh directory
* not being cleaned up - needs fixing
* being created in places like _darcs/pristine - urgently needs fixing
5. weird hanging [uh-oh!]
* sporadic, appears to only occur with --disable-ssh-cm
I have recently submitted some patches to the list (not yet in the
official repos) to help us test the ssh stuff. Unfortunately, I
have not gotten around to making the automated tests work under
Windows. Will probably make a batch file or something, but could use a
hand with that.
The good news
-------------
The basic configurations which appear to work:
* PuTTY under cmd.exe in Windows _with_ pageant running (tested
by hand)
* OpenSSH under Unix in all configuations (--disable-ssh-cm, using
ssh-agent, etc)
darcs/PuTTY does not work without pageant (still don't have a good
explanation).
I have not tested any other Windows configurations, Cygwin, MSYS,
OpenSSH. Feel free to chime in.
The bad news
------------
I would say that I am most troubled by the weird hanging. I can now
even reproduce it, thanks to automated testing. The general symptom is
that darcs waits forever for a subprocess like scp/sftp. killall ssh
sometimes makes it succeed, which is indeed quite frightening
It seems to occur when you use the control master feature (so a
workaround consists of using --disable-ssh-cm [thanks Juliusz!] and
ssh-agent).
On the unstable repository, I get the impression that it occurs all
the time... need to poke around it some more.
On the stable repository, I have run the ssh.sh test 10 times with
NO_CONTROL_MASTER=1 (this does --disable-ssh-cm) without any problems
[hint: ssh-agent]. However, if I run it without that environment
variable, that is, if I let it use the control master, I get the
weird hanging thing 2/10 times, both times on darcs pull.
I'm going to set this aside till the weekend so that I can work on my
real job, so you might not get a response out of me, but I will be
reading any of your ideas with great interest. Luckily, there is a
workaround to this behaviour (--disable-ssh-cm), but I would
nevertheless love to know why this is happening.
--
Eric Kow http://www.loria.fr/~kow
PGP Key ID: 08AC04F9 Merci de corriger mon français.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 186 bytes
Desc: not available
Url : http://lists.osuosl.org/pipermail/darcs-devel/attachments/20061121/abfef5f1/attachment.pgp
More information about the darcs-devel
mailing list