aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java
diff options
context:
space:
mode:
authorKenny Root <kenny@the-b.org>2015-07-23 22:38:46 -0700
committerKenny Root <kenny@the-b.org>2015-07-24 15:35:39 -0700
commit147dae0102979a0217ac8a9eea82a4969a1ecf63 (patch)
tree40718fac7fc6a3afce07c910ffc243dd5d69d403 /app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java
parent739337624a5e69221a998cf10b1fd34fcc5ecd2d (diff)
downloadconnectbot-147dae0102979a0217ac8a9eea82a4969a1ecf63.tar.gz
connectbot-147dae0102979a0217ac8a9eea82a4969a1ecf63.tar.bz2
connectbot-147dae0102979a0217ac8a9eea82a4969a1ecf63.zip
Move to library-based build
Diffstat (limited to 'app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java')
-rw-r--r--app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java135
1 files changed, 0 insertions, 135 deletions
diff --git a/app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java b/app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java
deleted file mode 100644
index 0d1bb35..0000000
--- a/app/src/main/java/com/trilead/ssh2/channel/LocalAcceptThread.java
+++ /dev/null
@@ -1,135 +0,0 @@
-
-package com.trilead.ssh2.channel;
-
-import java.io.IOException;
-import java.net.InetSocketAddress;
-import java.net.ServerSocket;
-import java.net.Socket;
-
-/**
- * LocalAcceptThread.
- *
- * @author Christian Plattner, plattner@trilead.com
- * @version $Id: LocalAcceptThread.java,v 1.1 2007/10/15 12:49:56 cplattne Exp $
- */
-public class LocalAcceptThread extends Thread implements IChannelWorkerThread
-{
- ChannelManager cm;
- String host_to_connect;
- int port_to_connect;
-
- final ServerSocket ss;
-
- public LocalAcceptThread(ChannelManager cm, int local_port, String host_to_connect, int port_to_connect)
- throws IOException
- {
- this.cm = cm;
- this.host_to_connect = host_to_connect;
- this.port_to_connect = port_to_connect;
-
- ss = new ServerSocket(local_port);
- }
-
- public LocalAcceptThread(ChannelManager cm, InetSocketAddress localAddress, String host_to_connect,
- int port_to_connect) throws IOException
- {
- this.cm = cm;
- this.host_to_connect = host_to_connect;
- this.port_to_connect = port_to_connect;
-
- ss = new ServerSocket();
- ss.bind(localAddress);
- }
-
- public void run()
- {
- try
- {
- cm.registerThread(this);
- }
- catch (IOException e)
- {
- stopWorking();
- return;
- }
-
- while (true)
- {
- Socket s = null;
-
- try
- {
- s = ss.accept();
- }
- catch (IOException e)
- {
- stopWorking();
- return;
- }
-
- Channel cn = null;
- StreamForwarder r2l = null;
- StreamForwarder l2r = null;
-
- try
- {
- /* This may fail, e.g., if the remote port is closed (in optimistic terms: not open yet) */
-
- cn = cm.openDirectTCPIPChannel(host_to_connect, port_to_connect, s.getInetAddress().getHostAddress(), s
- .getPort());
-
- }
- catch (IOException e)
- {
- /* Simply close the local socket and wait for the next incoming connection */
-
- try
- {
- s.close();
- }
- catch (IOException ignore)
- {
- }
-
- continue;
- }
-
- try
- {
- r2l = new StreamForwarder(cn, null, s, cn.stdoutStream, s.getOutputStream(), "RemoteToLocal");
- l2r = new StreamForwarder(cn, r2l, s, s.getInputStream(), cn.stdinStream, "LocalToRemote");
- }
- catch (IOException e)
- {
- try
- {
- /* This message is only visible during debugging, since we discard the channel immediatelly */
- cn.cm.closeChannel(cn, "Weird error during creation of StreamForwarder (" + e.getMessage() + ")",
- true);
- }
- catch (IOException ignore)
- {
- }
-
- continue;
- }
-
- r2l.setDaemon(true);
- l2r.setDaemon(true);
- r2l.start();
- l2r.start();
- }
- }
-
- public void stopWorking()
- {
- try
- {
- /* This will lead to an IOException in the ss.accept() call */
- ss.close();
- }
- catch (IOException e)
- {
- }
- }
-}