mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-06 05:07:41 +00:00
Migrated to new tunnel servlet API, updated .gitignore
This commit is contained in:
1
guacamole/.gitignore
vendored
1
guacamole/.gitignore
vendored
@@ -1 +1,2 @@
|
||||
target/
|
||||
*~
|
||||
|
@@ -1,5 +1,5 @@
|
||||
|
||||
package net.sourceforge.guacamole.net.authentication.basic;
|
||||
package net.sourceforge.guacamole.net.basic;
|
||||
|
||||
/*
|
||||
* Guacamole - Clientless Remote Desktop
|
@@ -1,12 +1,4 @@
|
||||
|
||||
package net.sourceforge.guacamole.net.authentication.basic;
|
||||
|
||||
import javax.servlet.http.HttpSession;
|
||||
import net.sourceforge.guacamole.GuacamoleTCPClient;
|
||||
import net.sourceforge.guacamole.GuacamoleException;
|
||||
import net.sourceforge.guacamole.net.Configuration;
|
||||
import net.sourceforge.guacamole.net.GuacamoleProperties;
|
||||
import net.sourceforge.guacamole.net.authentication.GuacamoleClientProvider;
|
||||
package net.sourceforge.guacamole.net.basic;
|
||||
|
||||
/*
|
||||
* Guacamole - Clientless Remote Desktop
|
||||
@@ -26,12 +18,26 @@ import net.sourceforge.guacamole.net.authentication.GuacamoleClientProvider;
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
public class BasicGuacamoleClientProvider implements GuacamoleClientProvider {
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.servlet.http.HttpSession;
|
||||
import net.sourceforge.guacamole.GuacamoleException;
|
||||
import net.sourceforge.guacamole.GuacamoleTCPClient;
|
||||
import net.sourceforge.guacamole.net.Configuration;
|
||||
import net.sourceforge.guacamole.net.GuacamoleProperties;
|
||||
import net.sourceforge.guacamole.net.GuacamoleSession;
|
||||
import net.sourceforge.guacamole.net.tunnel.GuacamoleTunnelServlet;
|
||||
|
||||
public GuacamoleTCPClient createClient(HttpSession session) throws GuacamoleException {
|
||||
public class BasicGuacamoleTunnelServlet extends GuacamoleTunnelServlet {
|
||||
|
||||
@Override
|
||||
protected void doConnect(HttpServletRequest request, HttpServletResponse response) throws GuacamoleException {
|
||||
|
||||
// Session must already exist from login
|
||||
HttpSession httpSession = request.getSession(false);
|
||||
|
||||
// Retrieve authorized config data from session
|
||||
Configuration config = (Configuration) session.getAttribute("BASIC-LOGIN-AUTH");
|
||||
Configuration config = (Configuration) httpSession.getAttribute("BASIC-LOGIN-AUTH");
|
||||
|
||||
// If no data, not authorized
|
||||
if (config == null)
|
||||
@@ -43,9 +49,11 @@ public class BasicGuacamoleClientProvider implements GuacamoleClientProvider {
|
||||
GuacamoleTCPClient client = new GuacamoleTCPClient(hostname, port);
|
||||
client.connect(config);
|
||||
|
||||
// Return authorized session
|
||||
return client;
|
||||
// Set client for session
|
||||
GuacamoleSession session = new GuacamoleSession(httpSession);
|
||||
session.attachClient(client);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -1,5 +1,5 @@
|
||||
|
||||
package net.sourceforge.guacamole.net.authentication.basic;
|
||||
package net.sourceforge.guacamole.net.basic;
|
||||
|
||||
/*
|
||||
* Guacamole - Clientless Remote Desktop
|
@@ -26,41 +26,26 @@
|
||||
30
|
||||
</session-timeout>
|
||||
</session-config>
|
||||
<!-- Guacamole Tunnel Servlets -->
|
||||
|
||||
<!-- Guacamole Tunnel Servlet -->
|
||||
<servlet>
|
||||
<description>Connect servlet.</description>
|
||||
<servlet-name>Connect</servlet-name>
|
||||
<servlet-class>net.sourceforge.guacamole.net.tunnel.Connect</servlet-class>
|
||||
<description>Tunnel servlet.</description>
|
||||
<servlet-name>Tunnel</servlet-name>
|
||||
<servlet-class>net.sourceforge.guacamole.net.basic.BasicGuacamoleTunnelServlet</servlet-class>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Connect</servlet-name>
|
||||
<url-pattern>/connect</url-pattern>
|
||||
<servlet-name>Tunnel</servlet-name>
|
||||
<url-pattern>/tunnel</url-pattern>
|
||||
</servlet-mapping>
|
||||
<servlet>
|
||||
<description>Outbound servlet.</description>
|
||||
<servlet-name>Outbound</servlet-name>
|
||||
<servlet-class>net.sourceforge.guacamole.net.tunnel.Outbound</servlet-class>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Outbound</servlet-name>
|
||||
<url-pattern>/outbound</url-pattern>
|
||||
</servlet-mapping>
|
||||
<servlet>
|
||||
<description>Input servlet.</description>
|
||||
<servlet-name>Inbound</servlet-name>
|
||||
<servlet-class>net.sourceforge.guacamole.net.tunnel.Inbound</servlet-class>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Inbound</servlet-name>
|
||||
<url-pattern>/inbound</url-pattern>
|
||||
</servlet-mapping>
|
||||
<!-- Basic Login Servlets -->
|
||||
|
||||
<!-- Basic Login Servlet -->
|
||||
<servlet>
|
||||
<servlet-name>BasicLogin</servlet-name>
|
||||
<servlet-class>net.sourceforge.guacamole.net.authentication.basic.BasicLogin</servlet-class>
|
||||
<servlet-class>net.sourceforge.guacamole.net.basic.BasicLogin</servlet-class>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>BasicLogin</servlet-name>
|
||||
<url-pattern>/login</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
</web-app>
|
||||
|
@@ -178,7 +178,7 @@
|
||||
window.onresize();
|
||||
|
||||
// Instantiate client
|
||||
var guac = new GuacamoleClient(display);
|
||||
var guac = new GuacamoleClient(display, "tunnel");
|
||||
|
||||
var state = document.getElementById("state");
|
||||
guac.setOnStateChangeHandler(function(clientState) {
|
||||
|
Reference in New Issue
Block a user