From 8b9b4881b71f60db8fd44c38a96b3c9fa6503909 Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Sun, 16 Apr 2017 21:10:25 -0700 Subject: [PATCH] GUACAMOLE-267: Do not require ConfiguredGuacamoleSocket for all active connections. --- .../tunnel/AbstractGuacamoleTunnelService.java | 2 +- .../auth/jdbc/tunnel/ActiveConnectionRecord.java | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/AbstractGuacamoleTunnelService.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/AbstractGuacamoleTunnelService.java index 2e2c947e4..1ddd7f9d5 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/AbstractGuacamoleTunnelService.java +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/AbstractGuacamoleTunnelService.java @@ -488,7 +488,7 @@ public abstract class AbstractGuacamoleTunnelService implements GuacamoleTunnelS getUnconfiguredGuacamoleSocket(cleanupTask), config, info); // Assign and return new tunnel - return activeConnection.assignGuacamoleTunnel(socket); + return activeConnection.assignGuacamoleTunnel(socket, socket.getConnectionID()); } diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/ActiveConnectionRecord.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/ActiveConnectionRecord.java index 1fe4143f2..3a4b1484d 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/ActiveConnectionRecord.java +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/ActiveConnectionRecord.java @@ -366,13 +366,17 @@ public class ActiveConnectionRecord implements ConnectionRecord { * given socket. * * @param socket - * The ConfiguredGuacamoleSocket to use to create the tunnel associated - * with this connection record. - * + * The GuacamoleSocket to use to create the tunnel associated with this + * connection record. + * + * @param connectionID + * The connection ID assigned to this connection by guacd. + * * @return * The newly-created tunnel associated with this connection record. */ - public GuacamoleTunnel assignGuacamoleTunnel(final ConfiguredGuacamoleSocket socket) { + public GuacamoleTunnel assignGuacamoleTunnel(final GuacamoleSocket socket, + String connectionID) { // Create tunnel with given socket this.tunnel = new AbstractGuacamoleTunnel() { @@ -391,7 +395,7 @@ public class ActiveConnectionRecord implements ConnectionRecord { // Store connection ID of the primary connection only if (isPrimaryConnection()) - this.connectionID = socket.getConnectionID(); + this.connectionID = connectionID; // Return newly-created tunnel return this.tunnel;