Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » DSDP - Target Management » Does TM and the Terminal view support a nested and heterogenous connection?
Does TM and the Terminal view support a nested and heterogenous connection? [message #12907] Tue, 17 July 2007 18:32 Go to next message
Shawn McCarney is currently offline Shawn McCarney
Messages: 11
Registered: July 2009
Junior Member
To reach some targets, my team has to set up a nested and heterogenous
connection.

For example:
* Create an ssh connection to host A
* Create a telnet connection from host A to target B

The number of intermediate hosts can be greater than 1.

This is easily done manually within an xterm window, but it is more
complex to automate within Java.

Is this supported within the TM project and/or the Terminal view? I'd
like to move to TM but this a key requirement.

Thanks!
Shawn
Re: Does TM and the Terminal view support a nested and heterogenous connection? [message #12964 is a reply to message #12907] Thu, 19 July 2007 17:58 Go to previous message
Martin Oberhuber is currently offline Martin Oberhuber
Messages: 984
Registered: July 2009
Senior Member
Hello Shawn,

since you've been using xterm before, you can always use the TM Terminal
in exactly the same manner -- connect the Terminal to host A, then type
"telnet hostB" or whatever other command you want right in the Terminal.

Note that the terminal type is "ansi" so if you want programs like vi,
emacs to work you might need to type
setenv TERM=ansi
also, I'm not 100% sure whether the automatic Terminal resizing will
work over multiple stations, but I think that xterm may also not be able
to do that (you may need to type "resize" if you are a few hops away and
you resized the terminal).

If you want to do some Java programming, you can extend RSE and write
your own ITerminalConnector that you contribute via extension point: you
could derive yours from the SshConnector but extend the getInputStream()
method such that you automatically send the commands for doing the
additional hops before the user gets a chance to enter something. Your
Connector would then have an extended UI for defining all the hops you
need, and then you fill it in and just press "connect".

A little drawback of doing this in the Terminal, is that it currently
does not remember connection settings from previous connections; we have
https://bugs.eclipse.org/bugs/show_bug.cgi?id=169398 logged for adding
this in the future.

If you want to do it in RSE, the main drawback is that the RSE
commandview does no terminal emulation; we have
https://bugs.eclipse.org/bugs/show_bug.cgi?id=170910 to add this in the
future. Apart from that, the RSE command framework also allows you to
write custom extensions (plugins) for sending the necessary commands to
do your hops. The TelnetConnectorService class is one where you can see
how it can be done.

Another approach to your request might be adding a framework for
creating SSH tunnels to remote hosts, and add that to RSE. Bug
https://bugs.eclipse.org/bugs/show_bug.cgi?id=195170 asks for that, and
there are references that some RSE users already have such a framework
in-house, but I'm not sure whether we can address this any time soon
unless we get a contribution from the community.

Hope that helps, if you have any other question just let us know.

Thanks,
--
Martin Oberhuber
Target Management Project Lead, DSDP PMC Member
http://www.eclipse.org/dsdp/tm


Shawn McCarney wrote:
> To reach some targets, my team has to set up a nested and heterogenous
> connection.
>
> For example:
> * Create an ssh connection to host A
> * Create a telnet connection from host A to target B
>
> The number of intermediate hosts can be greater than 1.
>
> This is easily done manually within an xterm window, but it is more
> complex to automate within Java.
>
> Is this supported within the TM project and/or the Terminal view? I'd
> like to move to TM but this a key requirement.
>
> Thanks!
> Shawn
>
Re: Does TM and the Terminal view support a nested and heterogenous connection? [message #568997 is a reply to message #12907] Thu, 19 July 2007 17:58 Go to previous message
Martin Oberhuber is currently offline Martin Oberhuber
Messages: 984
Registered: July 2009
Senior Member
Hello Shawn,

since you've been using xterm before, you can always use the TM Terminal
in exactly the same manner -- connect the Terminal to host A, then type
"telnet hostB" or whatever other command you want right in the Terminal.

Note that the terminal type is "ansi" so if you want programs like vi,
emacs to work you might need to type
setenv TERM=ansi
also, I'm not 100% sure whether the automatic Terminal resizing will
work over multiple stations, but I think that xterm may also not be able
to do that (you may need to type "resize" if you are a few hops away and
you resized the terminal).

If you want to do some Java programming, you can extend RSE and write
your own ITerminalConnector that you contribute via extension point: you
could derive yours from the SshConnector but extend the getInputStream()
method such that you automatically send the commands for doing the
additional hops before the user gets a chance to enter something. Your
Connector would then have an extended UI for defining all the hops you
need, and then you fill it in and just press "connect".

A little drawback of doing this in the Terminal, is that it currently
does not remember connection settings from previous connections; we have
https://bugs.eclipse.org/bugs/show_bug.cgi?id=169398 logged for adding
this in the future.

If you want to do it in RSE, the main drawback is that the RSE
commandview does no terminal emulation; we have
https://bugs.eclipse.org/bugs/show_bug.cgi?id=170910 to add this in the
future. Apart from that, the RSE command framework also allows you to
write custom extensions (plugins) for sending the necessary commands to
do your hops. The TelnetConnectorService class is one where you can see
how it can be done.

Another approach to your request might be adding a framework for
creating SSH tunnels to remote hosts, and add that to RSE. Bug
https://bugs.eclipse.org/bugs/show_bug.cgi?id=195170 asks for that, and
there are references that some RSE users already have such a framework
in-house, but I'm not sure whether we can address this any time soon
unless we get a contribution from the community.

Hope that helps, if you have any other question just let us know.

Thanks,
--
Martin Oberhuber
Target Management Project Lead, DSDP PMC Member
http://www.eclipse.org/dsdp/tm


Shawn McCarney wrote:
> To reach some targets, my team has to set up a nested and heterogenous
> connection.
>
> For example:
> * Create an ssh connection to host A
> * Create a telnet connection from host A to target B
>
> The number of intermediate hosts can be greater than 1.
>
> This is easily done manually within an xterm window, but it is more
> complex to automate within Java.
>
> Is this supported within the TM project and/or the Terminal view? I'd
> like to move to TM but this a key requirement.
>
> Thanks!
> Shawn
>
Previous Topic:FTP Passive setting doesn't work?
Next Topic:Using TM in an OSGi solution
Goto Forum:
  


Current Time: Sun Oct 26 06:08:49 GMT 2014

Powered by FUDForum. Page generated in 0.31351 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software