aboutsummaryrefslogtreecommitdiffstats
path: root/src/org
diff options
context:
space:
mode:
authorKenny Root <kenny@the-b.org>2009-06-24 19:20:48 +0000
committerKenny Root <kenny@the-b.org>2009-06-24 19:20:48 +0000
commit93d7a03dc05cb6bc230fff3b1d0b124263f00320 (patch)
tree1f92f43a7d8519d84476754f7d4704279761a92e /src/org
parent9c24eddf62f97f354c9715388e18859492f13e40 (diff)
downloadconnectbot-93d7a03dc05cb6bc230fff3b1d0b124263f00320.tar.gz
connectbot-93d7a03dc05cb6bc230fff3b1d0b124263f00320.tar.bz2
connectbot-93d7a03dc05cb6bc230fff3b1d0b124263f00320.zip
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
Diffstat (limited to 'src/org')
-rw-r--r--src/org/connectbot/transport/SSH.java10
1 files changed, 9 insertions, 1 deletions
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();