Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View
Hi all.

I have a problem. I would like to use CVS (Concurent Versioning System)
in client/server mode, via SSH.

The "servers" are Tru64 UNIX machines (irrelevant, for this matter) with
either OpenSSH v3.8.1 or SSH2 v3.2.0 all with CVS 1.12.x installed.

The "clients" are WinXP machines with either PuTTY v0.53 or SecureCRT v4.1.6

The CVS can use RSH for remote repositories, but any other RSH-like
channel (SSH) can be used, as long as that user can login without being
prompted for pass. Truth be said, I've managed to run CVS from one UNIX
to another, with password prompting and it had no complaints.

So, running CVS between UNIX hosts works like a charm:

Papa-Legba:/# export CVS_RSH=ssh
Papa-Legba:/# cvs -d
checkout CVSROOT/modules
warning: Cannot connect to DISPLAY; X11 forwarding disabled.
U CVSROOT/modules

So, this slides smoothly, although there are some messages displayed. I
suspect they go to STDERR, so CVS pays no attention to them, since it is
listening to STDIN/STDOUT.


When I try to do the same from a WinXP machine, I run into trouble.

D:\JBuilder9\bin> type ssh.cmd
@echo off

set VSH_PROG="D:\Program Files\SecureCRT-4.1\VSH.EXE"
set VSH_ID="D:\Documents and Settings\nikola\Application
set VSH_USER="uvid"
set VSH_HOST=""

%VSH_PROG% -i %VSH_ID% -l %VSH_USER% -x -nopty %VSH_HOST%

D:\JBuilder9\bin> set CVS_RSH=ssh.cmd

D:\JBuilder9\bin> cvs -d checkout
stty: tcgetattr: Not a typewriter
Not a terminal
zsh: command not found: Root
zsh: command not found: Valid-responses
zsh: command not found: valid-requests
cvs [checkout aborted]: received interrupt signal

D:\JBUILD~1\bin>^CThe process tried to write to a nonexistent pipe.

All of this seams to be caused by VSH.EXE actually logging onto the
system, because the system displays greeting with MOTD upon logon. I
know, you'll say: "turn off MOTD", but the system is in C2 Security mode
and a part of the logon greeting cannot be turned off (because it is
required by the C2 standard). "ssh" both from "SSH2" and "OpenSSH" do
not exibit this behaviour when run in "command mode".

IOW, if I run "ssh -l uvid ls", I will get output from
"ls", but no greeting message.

What can I do? Other than installing CygWin and OpenSSH...


Re: SSH and CVS

It's been a while so it may have changed but when I was using Eclipse
2.1 to sync I had to use plink which is putty's version of the console ssh.

plink seemed to work exactly the same way as the ssh console so I didn't
even have to change the command line optiopns.

I may be wrong on this.

Nikola Milutinovic wrote:

Quoted text here. Click to load it

Re: SSH and CVS

Nikola Milutinovic wrote:
Quoted text here. Click to load it

Should be as follows:

    export CVS_RSH="ssh -x"

This will get rid of the X11 forwarding complaints.

Quoted text here. Click to load it

What in the? OK, first, try working with Putty instead of VanDyke's
SecureCRT, which is much more widely documented.

Second, I've had good success with using Putty to build an SSH tunnel to the
remote target,  and using that tunnel to run a more common rsh command to
the target system. It avoids some of the fun and games of using
password-free SSH keys or of using ssh-agent to store your unlocked keys,
especially for folks who don't want to bother to install CygWin to get

Quoted text here. Click to load it

Work with Putty. There are many, many well-writen web pages documenting how
to do this with Putty, and far fewer for the very good but only commercially
available SecureCRT.

Re: SSH and CVS

Nico Kadel-Garcia wrote:

Quoted text here. Click to load it

Thanks Nico.

I found a section "CVS and PLink" in the help of PuTTY. Shame on me!

Anyway, PLINK works like a charm, if you follow some guidelines. As for
VSH (SecureCRT), I wrote a "ssh.cmd" batch which re-orders arguments, so
that VSH will work. Namely, VSH doesn't like when "-l user" is placed at
the end of argument chain.

(sigh) Oh, well, made it to work. Thanks for your support guys.


Re: SSH and CVS

You might find this article helpful /

Quoted text here. Click to load it

Re: SSH and CVS

Quoted text here. Click to load it

Thank you, I've seen that one. If you notice, it's got a lot of steps that
are fairly mystical to non-UNIX people, like "copy your public key file over
to the server and put a copy of it in your .ssh/authorized_keys file".

Walking the Windows users through these steps is like pulling teeth from a
duck. It's a lot of effort, and frustrating to all involved.

Re: SSH and CVS

Quoted text here. Click to load it

I have them email it to me.  I take care of creating their user
account on the Linux box and stuffing their public key where it needs
to go.

Quoted text here. Click to load it

I let them go over my checklist while I watch over their shoulder.  Of
course that won't scale too well but I haven't reached that stage yet.
When I do I'll just have to edit the checklist to tip-top shape...

Site Timeline