From: Steve Hay Date: Mon, 8 Aug 2005 16:12:12 +0000 (+0000) Subject: Update Porting/repository.pod to recommend Cygwin's ssh on Win32 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=d457d97aa74412bc6e46d98cb5ecab3d8c0837fb;p=p5sagit%2Fp5-mst-13.2.git Update Porting/repository.pod to recommend Cygwin's ssh on Win32 Cygwin's ssh client seems to be superior to MSYS's ssh client in that it supports the ServerAliveInterval config setting which prevents the ssh client from timing out every so often p4raw-id: //depot/perl@25278 --- diff --git a/Porting/repository.pod b/Porting/repository.pod index 668389a..c1d7b5b 100644 --- a/Porting/repository.pod +++ b/Porting/repository.pod @@ -38,15 +38,14 @@ home site C which mentions ftp sites from which it's available. You only need to build the client parts (ssh and ssh-keygen should suffice). -If you're on Windows then you might like to obtain MSYS (Minimal System) -from: +If you're on Windows then you might like to obtain Cygwin from: - http://www.mingw.org/download.shtml + http://cygwin.com/ -which contains an ssh client. If you use this outside of the MSYS -environment then you'll need to ensure the HOME environment variable -is set to a suitable directory: ssh.exe will want to access files in -a F<.ssh> sub-directory of %HOME%. +which contains an ssh client. (MSYS also contains an ssh client +but it seems to time-out and disconnect from the server and doesn't +understand the ServerAliveInterval setting described later that can +be used to stop Cygwin's ssh client from doing this.) Alternatively, the "plink" program, part of PuTTY: @@ -105,6 +104,14 @@ the Perl repository -- ssh is used for authentication rather than encryption (the Perl sources are open anyway) -- but either protocol is supported by the server. +B In order to make the private key +files only readable by you you must include the string "ntea" in the +"CYGWIN" environment variable in the shell used to run C, +and in the shell used to run the ssh client itself later. If "CYGWIN" +doesn't contain "ntea" then it will appear to the ssh client that the +file permissions are not set correctly, in which case the files will be +ignored and you won't be able to connect. + =head1 Notifying the Repository Keeper Mail the contents of that public key file to the keeper of the perl @@ -241,6 +248,21 @@ problems. The flag can be specified multiple times to increase verbosity. Note that specifying the "-q" flag as well might override your request for verbose output, so drop the "-q" flag when trying this. +If you're using the Cygwin ssh client on Windows then you will probably +find that the connection times out after a short period of inactivity. +You will have to keep re-entering your passphrase to reconnect, which +gets annoying after a while. In order to prevent these time-outs from +happening place the following two lines in the file F<~/.ssh/config>: + + Host sickle.activestate.com + ServerAliveInterval 120 + +This causes the ssh client to send a message to the server every 120 +seconds to check that the server is still alive. The client will not +disconnect unless "ServerAliveCountMax" many of these messages go +unanswered. Run C for more details. Note also that +this option applies to protocol version 2 only. + =head1 Using the Perforce Client Remember to read the documentation for Perforce. You need @@ -486,6 +508,7 @@ More updates by Jarkko Hietaniemi, Ejhi@iki.fiE, 28 June 2001. Perforce clarifications by Randall Gellens, Ercg@users.sourceforge.netE, 12 July 2001. -Windows-related updates by Steve Hay Eshay@cpan.orgE, 23 July 2004. +Windows-related updates by Steve Hay Eshay@cpan.orgE, 23 July 2004 +and 08 Aug 2005. =cut