From 93d7a03dc05cb6bc230fff3b1d0b124263f00320 Mon Sep 17 00:00:00 2001 From: Kenny Root Date: Wed, 24 Jun 2009 19:20:48 +0000 Subject: Do not allow enabling or disabling port forwards before authentication in SSH transport git-svn-id: https://connectbot.googlecode.com/svn/trunk/connectbot@330 df292f66-193f-0410-a5fc-6d59da041ff2 --- src/org/connectbot/transport/SSH.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/org/connectbot/transport/SSH.java b/src/org/connectbot/transport/SSH.java index aa41202..7ddbe7c 100644 --- a/src/org/connectbot/transport/SSH.java +++ b/src/org/connectbot/transport/SSH.java @@ -94,7 +94,7 @@ public class SSH extends AbsTransport implements ConnectionMonitor, InteractiveC } private boolean compression = false; -// private volatile boolean authenticated = false; + private volatile boolean authenticated = false; private volatile boolean connected = false; private volatile boolean sessionOpen = false; @@ -341,6 +341,8 @@ public class SSH extends AbsTransport implements ConnectionMonitor, InteractiveC * authentication. If called before authenticated, it will just fail. */ private void finishConnection() { + authenticated = true; + for (PortForwardBean portForward : portForwards) { try { enablePortForward(portForward); @@ -567,6 +569,9 @@ public class SSH extends AbsTransport implements ConnectionMonitor, InteractiveC return false; } + if (!authenticated) + return false; + if (HostDatabase.PORTFORWARD_LOCAL.equals(portForward.getType())) { LocalPortForwarder lpf = null; try { @@ -623,6 +628,9 @@ public class SSH extends AbsTransport implements ConnectionMonitor, InteractiveC return false; } + if (!authenticated) + return false; + if (HostDatabase.PORTFORWARD_LOCAL.equals(portForward.getType())) { LocalPortForwarder lpf = null; lpf = (LocalPortForwarder)portForward.getIdentifier(); -- cgit v1.2.3