On Fri, 28 Apr 2006, Oliver Giesen wrote:
> petesea bigfoot.com wrote:
>
>> Is the CVS_RSH environment variable the only way to
define an external
>> ssh command?
>
> No, you could also use the "command"
keyword right inside the :ext:
> connection string (available in winCvs via the CVSROOT
wizard). E.g. :
>
> :ext;command='plink.exe -l %u %h':user server:/repo
I had already tried this (and also
":ext:"), but couldn't get it
to work. I didn't use the syntax you describe (with the %u
%h), so I just
tried that, but it doesn't seem to work either (CVSNT
2.0.51d, because
that's what comes with WinCVS 2.0.2.4).
If I supply arguments as you did... meaning literal
"%u" and "%h", I get:
Unknown command: `%u'
(followed by the list of valid cvs commands... in other
words, the error
is coming from cvs.exe, not plink.exe)
If I replace the "%u" and "%h" with
my actual USERNAME and HOSTNAME, then
I get:
Unknown command: `USERNAME'
If I don't supply ANY arguments to plink and rely on the
PuTTY session
that matches the hostname to determine the session options,
then it
APPEARS cvs tries to run the command, but it doesn't appear
to be loading
the PuTTY session. Either that, or it's not starting the
command with an
implicit "%u %h" or "-l %u %h".
Based on your suggested example above,
I'm guessing that's the case. cvs.exe is just executing
"plink.exe" with
NO arguments and plink.exe is returning an error that
cvs.exe interprets
as a failure to get a network connection. The error I get
is:
FATAL ERROR: Network error: Connection refused
Again, just to be clear... I know it's not a problem with
my plink.exe or
my PuTTY session or the server since setting CVS_RSH works
just fine.
The other problem with using the ":ext;command="
syntax (or the even more
obscure looking ":ext" syntax)... is
simply a matter of support.
I have thousands of users to support. And trying to figure
out if they've
misplaced a quote, color, semi-colon or other nasty bit of
syntax is hard
enough with a basic CVSROOT. I'd rather not add all the
extra syntactical
sugar needed to support "command=" unless I
really have to.
It sort of sounds like I'm stuck with forcing the user to
reboot in order
to get Windows to recognize the CVS_RSH environment variable
or (assuming
I can get :ext;command=" to work), the added support
involved with making
sure the longer more obscure looking CVSROOT is valid. And
keeping in
mind I'll need to change all CVS/Root files as well... that
can become a
nightmare.
Wouldn't it be nice if there was a registry entry that was
just like
CVS_RSH, except it wasn't an environment variable??? hint,
hint.
eg.
Take TortoiseCVS as an example.
> Better yet: Use :ssh: instead of :ext: . That will save
you the trouble
> of having to set up an external SSH tunneling client
altogether. That
> is, unless your desire to use :ext: came from the need
to use something
> altogether different than SSH authentication.
I am using ssh to tunnel, but not public/private key for
authentication.
I'm using a custom plink that supports GSSAPI/Kerberos
authentication.
Therefore I can't use ":ssh:" since I'm
assuming it's an internal ssh
implementation and doesn't support GSSAPI/Kerberos.
And no... I can't use ":sspi:",
":kserver:" or ":gserver:" either.
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.y
ahoo.com/group/cvsgui/
<*> To unsubscribe from this group, send an email to:
cvsgui-unsubscribe@yahoogroups.com
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.c
om/info/terms/
|