From 797bb86a4390504ab02afed8bf544b44fbad1af0 Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Fri, 6 Jan 2017 19:24:50 -0500 Subject: [PATCH 01/12] GUACAMOLE-47: Implement support for client hostname/IP token for connections. --- .../guacamole/token/StandardTokens.java | 17 ++++++++ .../org/apache/guacamole/rest/APIRequest.java | 43 +++++++++++++++++++ 2 files changed, 60 insertions(+) diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java index 8c4655ac4..4bf4221b7 100644 --- a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java +++ b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java @@ -41,6 +41,16 @@ public class StandardTokens { */ public static final String PASSWORD_TOKEN = "GUAC_PASSWORD"; + /** + * The name of the client token added via addStandardTokens(). + */ + public static final String CLIENT_HOST_TOKEN = "GUAC_CLIENT_HOST"; + + /** + * The IP of the client token added via addStandardTokens(). + */ + public static final String CLIENT_IP_TOKEN = "GUAC_CLIENT_IP"; + /** * The name of the date token (server-local time) added via * addStandardTokens(). @@ -115,6 +125,13 @@ public class StandardTokens { if (password != null) filter.setToken(PASSWORD_TOKEN, password); + // Add client hostname and ip tokens + HttpServletRequest request = credentials.getRequest(); + if (request != null) { + filter.setToken(CLIENT_HOST_TOKEN, request.getRemoteHost()); + filter.setToken(CLIENT_IP_TOKEN, request.getRemoteAddr()); + } + // Add any tokens which do not require credentials addStandardTokens(filter); diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java index 530b4dc74..6a49c3e76 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java @@ -41,6 +41,16 @@ public class APIRequest extends HttpServletRequestWrapper { */ private final Map parameters; + /** + * The remote hostname that initiated the request. + */ + private final String remoteHost; + + /** + * The remote ip address that initiated the request. + */ + private final String remoteAddr; + /** * Wraps the given HttpServletRequest, using the given MultivaluedMap to * provide all request parameters. All HttpServletRequest functions which @@ -58,6 +68,29 @@ public class APIRequest extends HttpServletRequestWrapper { super(request); + // Try a few methods to get client info. + String clientHostname = ""; + String clientAddress = ""; + if(request.getHeader("X-Guacamole-Client-Hostname") != "") { + this.remoteHost = request.getHeader("X-Guacamole-Client-Hostname"); + } else if(request.getHeader("X-Forwarded-For") != "") { + this.remoteHost = request.getHeader("X-Forwarded-For"); + } else if(request.getRemoteHost() != "") { + this.remoteHost = request.getRemoteHost(); + } else { + this.remoteHost = ""; + } + + if(request.getHeader("X-Guacamole-Client-IP") != "") { + this.remoteAddr = request.getHeader("X-Guacamole-Client-IP"); + } else if(request.getHeader("X-Forwarded-For") != "") { + this.remoteAddr = request.getHeader("X-Forwarded-For"); + } else if(request.getRemoteAddr() != "") { + this.remoteAddr = request.getRemoteAddr(); + } else { + this.remoteAddr = ""; + } + // Copy parameters from given MultivaluedMap this.parameters = new HashMap(parameters.size()); for (Map.Entry> entry : parameters.entrySet()) { @@ -101,4 +134,14 @@ public class APIRequest extends HttpServletRequestWrapper { } + @Override + public String getRemoteHost() { + return this.remoteHost; + } + + @Override + public String getRemoteAddr() { + return this.remoteAddr; + } + } From 3614aff4d9719a4768b0e98b3c02b6e6635143ca Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Fri, 6 Jan 2017 19:26:53 -0500 Subject: [PATCH 02/12] GUACAMOLE-47: Add imports needed for implementation of client token. --- .../src/main/java/org/apache/guacamole/token/StandardTokens.java | 1 + 1 file changed, 1 insertion(+) diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java index 4bf4221b7..0dd4aed03 100644 --- a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java +++ b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java @@ -22,6 +22,7 @@ package org.apache.guacamole.token; import java.text.SimpleDateFormat; import java.util.Date; import org.apache.guacamole.net.auth.Credentials; +import javax.servlet.http.HttpServletRequest; /** * Utility class which provides access to standardized token names, as well as From 962bec88068a692a4a94ba1a51a9dbb102b5a5c7 Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Fri, 6 Jan 2017 19:38:31 -0500 Subject: [PATCH 03/12] GUACAMOLE-47: Shorten the token length and change name. --- .../main/java/org/apache/guacamole/token/StandardTokens.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java index 0dd4aed03..090231029 100644 --- a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java +++ b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java @@ -45,12 +45,12 @@ public class StandardTokens { /** * The name of the client token added via addStandardTokens(). */ - public static final String CLIENT_HOST_TOKEN = "GUAC_CLIENT_HOST"; + public static final String CLIENT_HOST_TOKEN = "GUAC_REMHOST"; /** * The IP of the client token added via addStandardTokens(). */ - public static final String CLIENT_IP_TOKEN = "GUAC_CLIENT_IP"; + public static final String CLIENT_IP_TOKEN = "GUAC_REMIP"; /** * The name of the date token (server-local time) added via From b785fc208b080bb39c593775dd9b0487ed597b31 Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Fri, 6 Jan 2017 20:10:38 -0500 Subject: [PATCH 04/12] GUACAMOLE-47: Tweak internal variable names for tokens. --- .../org/apache/guacamole/token/StandardTokens.java | 8 ++++---- .../java/org/apache/guacamole/rest/APIRequest.java | 14 ++++++-------- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java index 090231029..037e22c8b 100644 --- a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java +++ b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java @@ -45,12 +45,12 @@ public class StandardTokens { /** * The name of the client token added via addStandardTokens(). */ - public static final String CLIENT_HOST_TOKEN = "GUAC_REMHOST"; + public static final String REMHOST_TOKEN = "GUAC_REMHOST"; /** * The IP of the client token added via addStandardTokens(). */ - public static final String CLIENT_IP_TOKEN = "GUAC_REMIP"; + public static final String REMIP_TOKEN = "GUAC_REMIP"; /** * The name of the date token (server-local time) added via @@ -129,8 +129,8 @@ public class StandardTokens { // Add client hostname and ip tokens HttpServletRequest request = credentials.getRequest(); if (request != null) { - filter.setToken(CLIENT_HOST_TOKEN, request.getRemoteHost()); - filter.setToken(CLIENT_IP_TOKEN, request.getRemoteAddr()); + filter.setToken(REMHOST_TOKEN, request.getRemoteHost()); + filter.setToken(REMIP_TOKEN, request.getRemoteAddr()); } // Add any tokens which do not require credentials diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java index 6a49c3e76..c1c96128b 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java @@ -69,23 +69,21 @@ public class APIRequest extends HttpServletRequestWrapper { super(request); // Try a few methods to get client info. - String clientHostname = ""; - String clientAddress = ""; - if(request.getHeader("X-Guacamole-Client-Hostname") != "") { + if(request.getHeader("X-Guacamole-Client-Hostname") != null && request.getHeader("X-Guacamole-Client-Hostname") != "") { this.remoteHost = request.getHeader("X-Guacamole-Client-Hostname"); - } else if(request.getHeader("X-Forwarded-For") != "") { + } else if(request.getHeader("X-Forwarded-For") != null && request.getHeader("X-Forwarded-For") != "") { this.remoteHost = request.getHeader("X-Forwarded-For"); - } else if(request.getRemoteHost() != "") { + } else if(request.getRemoteHost() != null && request.getRemoteHost() != "") { this.remoteHost = request.getRemoteHost(); } else { this.remoteHost = ""; } - if(request.getHeader("X-Guacamole-Client-IP") != "") { + if(request.getHeader("X-Guacamole-Client-IP") != null && request.getHeader("X-Guacamole-Client-IP") != "") { this.remoteAddr = request.getHeader("X-Guacamole-Client-IP"); - } else if(request.getHeader("X-Forwarded-For") != "") { + } else if(request.getHeader("X-Forwarded-For") != null && request.getHeader("X-Forwarded-For") != "") { this.remoteAddr = request.getHeader("X-Forwarded-For"); - } else if(request.getRemoteAddr() != "") { + } else if(request.getRemoteHost() != null && request.getRemoteAddr() != "") { this.remoteAddr = request.getRemoteAddr(); } else { this.remoteAddr = ""; From 1b9f7c51549e2e87a75e4f4a4b3c3ab145a58141 Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Wed, 25 Jan 2017 12:40:12 -0500 Subject: [PATCH 05/12] GUACAMOLE-47: Fix checking for empty strings; Set tokens to null if nothing found. --- .../org/apache/guacamole/rest/APIRequest.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java index c1c96128b..5ee31e119 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java @@ -69,24 +69,24 @@ public class APIRequest extends HttpServletRequestWrapper { super(request); // Try a few methods to get client info. - if(request.getHeader("X-Guacamole-Client-Hostname") != null && request.getHeader("X-Guacamole-Client-Hostname") != "") { + if(request.getHeader("X-Guacamole-Client-Hostname") != null && !request.getHeader("X-Guacamole-Client-Hostname").isEmpty()) { this.remoteHost = request.getHeader("X-Guacamole-Client-Hostname"); - } else if(request.getHeader("X-Forwarded-For") != null && request.getHeader("X-Forwarded-For") != "") { + } else if(request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) { this.remoteHost = request.getHeader("X-Forwarded-For"); - } else if(request.getRemoteHost() != null && request.getRemoteHost() != "") { + } else if(request.getRemoteHost() != null && !request.getRemoteHost().isEmpty()) { this.remoteHost = request.getRemoteHost(); } else { - this.remoteHost = ""; + this.remoteHost = null; } - if(request.getHeader("X-Guacamole-Client-IP") != null && request.getHeader("X-Guacamole-Client-IP") != "") { + if(request.getHeader("X-Guacamole-Client-IP") != null && !request.getHeader("X-Guacamole-Client-IP").isEmpty()) { this.remoteAddr = request.getHeader("X-Guacamole-Client-IP"); - } else if(request.getHeader("X-Forwarded-For") != null && request.getHeader("X-Forwarded-For") != "") { + } else if(request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) { this.remoteAddr = request.getHeader("X-Forwarded-For"); - } else if(request.getRemoteHost() != null && request.getRemoteAddr() != "") { + } else if(request.getRemoteHost() != null && !request.getRemoteAddr().isEmpty()) { this.remoteAddr = request.getRemoteAddr(); } else { - this.remoteAddr = ""; + this.remoteAddr = null; } // Copy parameters from given MultivaluedMap From ac08688996efe621cbd0ed347fa734745667a36f Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Wed, 25 Jan 2017 12:46:55 -0500 Subject: [PATCH 06/12] GUACAMOLE-47: Fix code style issues. --- .../org/apache/guacamole/rest/APIRequest.java | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java index 5ee31e119..0101d6292 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java @@ -69,25 +69,23 @@ public class APIRequest extends HttpServletRequestWrapper { super(request); // Try a few methods to get client info. - if(request.getHeader("X-Guacamole-Client-Hostname") != null && !request.getHeader("X-Guacamole-Client-Hostname").isEmpty()) { + if (request.getHeader("X-Guacamole-Client-Hostname") != null && !request.getHeader("X-Guacamole-Client-Hostname").isEmpty()) this.remoteHost = request.getHeader("X-Guacamole-Client-Hostname"); - } else if(request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) { + else if (request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) this.remoteHost = request.getHeader("X-Forwarded-For"); - } else if(request.getRemoteHost() != null && !request.getRemoteHost().isEmpty()) { + else if (request.getRemoteHost() != null && !request.getRemoteHost().isEmpty()) this.remoteHost = request.getRemoteHost(); - } else { + else this.remoteHost = null; - } - if(request.getHeader("X-Guacamole-Client-IP") != null && !request.getHeader("X-Guacamole-Client-IP").isEmpty()) { + if (request.getHeader("X-Guacamole-Client-IP") != null && !request.getHeader("X-Guacamole-Client-IP").isEmpty()) this.remoteAddr = request.getHeader("X-Guacamole-Client-IP"); - } else if(request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) { + else if(request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) this.remoteAddr = request.getHeader("X-Forwarded-For"); - } else if(request.getRemoteHost() != null && !request.getRemoteAddr().isEmpty()) { + else if(request.getRemoteHost() != null && !request.getRemoteAddr().isEmpty()) this.remoteAddr = request.getRemoteAddr(); - } else { + else this.remoteAddr = null; - } // Copy parameters from given MultivaluedMap this.parameters = new HashMap(parameters.size()); From 44a197c7627af96d79aa0efc37e8366bceebda02 Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Wed, 25 Jan 2017 13:03:28 -0500 Subject: [PATCH 07/12] GUACAMOLE-47: Change new token names to something more descriptive. --- .../main/java/org/apache/guacamole/token/StandardTokens.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java index 037e22c8b..9cb1f4137 100644 --- a/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java +++ b/guacamole-ext/src/main/java/org/apache/guacamole/token/StandardTokens.java @@ -45,12 +45,12 @@ public class StandardTokens { /** * The name of the client token added via addStandardTokens(). */ - public static final String REMHOST_TOKEN = "GUAC_REMHOST"; + public static final String REMHOST_TOKEN = "GUAC_CLIENT_HOSTNAME"; /** * The IP of the client token added via addStandardTokens(). */ - public static final String REMIP_TOKEN = "GUAC_REMIP"; + public static final String REMIP_TOKEN = "GUAC_CLIENT_ADDRESS"; /** * The name of the date token (server-local time) added via From f08a66bb7f49b064edce30f617fb1543acb19e6a Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Fri, 27 Jan 2017 12:41:25 -0500 Subject: [PATCH 08/12] GUACAMOLE-47: When using XFF header, just set hostname component to null. --- .../src/main/java/org/apache/guacamole/rest/APIRequest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java index 0101d6292..29c940238 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java @@ -72,7 +72,7 @@ public class APIRequest extends HttpServletRequestWrapper { if (request.getHeader("X-Guacamole-Client-Hostname") != null && !request.getHeader("X-Guacamole-Client-Hostname").isEmpty()) this.remoteHost = request.getHeader("X-Guacamole-Client-Hostname"); else if (request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) - this.remoteHost = request.getHeader("X-Forwarded-For"); + this.remoteHost = null; else if (request.getRemoteHost() != null && !request.getRemoteHost().isEmpty()) this.remoteHost = request.getRemoteHost(); else From 00df0d75ebc1eed173a6fc49c7142acc260181a5 Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Sat, 28 Jan 2017 08:23:32 -0500 Subject: [PATCH 09/12] GUACAMOLE-47: Remove custom header code due to complexity & security concerns. --- .../main/java/org/apache/guacamole/rest/APIRequest.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java index 29c940238..57839a5fd 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java @@ -69,18 +69,14 @@ public class APIRequest extends HttpServletRequestWrapper { super(request); // Try a few methods to get client info. - if (request.getHeader("X-Guacamole-Client-Hostname") != null && !request.getHeader("X-Guacamole-Client-Hostname").isEmpty()) - this.remoteHost = request.getHeader("X-Guacamole-Client-Hostname"); - else if (request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) + if (request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) this.remoteHost = null; else if (request.getRemoteHost() != null && !request.getRemoteHost().isEmpty()) this.remoteHost = request.getRemoteHost(); else this.remoteHost = null; - if (request.getHeader("X-Guacamole-Client-IP") != null && !request.getHeader("X-Guacamole-Client-IP").isEmpty()) - this.remoteAddr = request.getHeader("X-Guacamole-Client-IP"); - else if(request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) + if(request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) this.remoteAddr = request.getHeader("X-Forwarded-For"); else if(request.getRemoteHost() != null && !request.getRemoteAddr().isEmpty()) this.remoteAddr = request.getRemoteAddr(); From 3fadac632c1d98aa6071728ada5af024e8eede88 Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Sat, 28 Jan 2017 12:58:53 -0500 Subject: [PATCH 10/12] GUACAMOLE-47: Remove XFF header code due to security concerns. --- .../java/org/apache/guacamole/rest/APIRequest.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java index 57839a5fd..bdef6f43b 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java @@ -68,17 +68,14 @@ public class APIRequest extends HttpServletRequestWrapper { super(request); - // Try a few methods to get client info. - if (request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) - this.remoteHost = null; - else if (request.getRemoteHost() != null && !request.getRemoteHost().isEmpty()) + // Grab the remote host info. + if (request.getRemoteHost() != null && !request.getRemoteHost().isEmpty()) this.remoteHost = request.getRemoteHost(); else this.remoteHost = null; - if(request.getHeader("X-Forwarded-For") != null && !request.getHeader("X-Forwarded-For").isEmpty()) - this.remoteAddr = request.getHeader("X-Forwarded-For"); - else if(request.getRemoteHost() != null && !request.getRemoteAddr().isEmpty()) + // Grab the remote ip info. + if(request.getRemoteHost() != null && !request.getRemoteAddr().isEmpty()) this.remoteAddr = request.getRemoteAddr(); else this.remoteAddr = null; From 20a61fc84589f0dc4a2f3e8e37ed026f8fe40d8c Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Sat, 28 Jan 2017 13:10:49 -0500 Subject: [PATCH 11/12] GUACAMOLE-47: Remove unnecessary checks of getRemoteHost/getRemoteAddr. --- .../java/org/apache/guacamole/rest/APIRequest.java | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java index bdef6f43b..ec977cc59 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java @@ -69,16 +69,10 @@ public class APIRequest extends HttpServletRequestWrapper { super(request); // Grab the remote host info. - if (request.getRemoteHost() != null && !request.getRemoteHost().isEmpty()) - this.remoteHost = request.getRemoteHost(); - else - this.remoteHost = null; + this.remoteHost = request.getRemoteHost(); // Grab the remote ip info. - if(request.getRemoteHost() != null && !request.getRemoteAddr().isEmpty()) - this.remoteAddr = request.getRemoteAddr(); - else - this.remoteAddr = null; + this.remoteAddr = request.getRemoteAddr(); // Copy parameters from given MultivaluedMap this.parameters = new HashMap(parameters.size()); From 013e10d61e2f67e777b434787592056120eb1a43 Mon Sep 17 00:00:00 2001 From: Nick Couchman Date: Sat, 28 Jan 2017 13:42:51 -0500 Subject: [PATCH 12/12] GUACAMOLE-47: Correct language of remoteHost/remoteAddr comments; Fix style issues on comment lines. --- .../main/java/org/apache/guacamole/rest/APIRequest.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java index ec977cc59..9044b24ad 100644 --- a/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java +++ b/guacamole/src/main/java/org/apache/guacamole/rest/APIRequest.java @@ -42,12 +42,12 @@ public class APIRequest extends HttpServletRequestWrapper { private final Map parameters; /** - * The remote hostname that initiated the request. + * The hostname of the client that initiated the request. */ private final String remoteHost; /** - * The remote ip address that initiated the request. + * The ip address of the client that initiated the request. */ private final String remoteAddr; @@ -68,10 +68,10 @@ public class APIRequest extends HttpServletRequestWrapper { super(request); - // Grab the remote host info. + // Grab the remote host info this.remoteHost = request.getRemoteHost(); - // Grab the remote ip info. + // Grab the remote ip info this.remoteAddr = request.getRemoteAddr(); // Copy parameters from given MultivaluedMap