diff --git a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/ProtocolParameter.java b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/ProtocolParameter.java index c3b6e3ee2..48307387a 100644 --- a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/ProtocolParameter.java +++ b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/ProtocolParameter.java @@ -43,7 +43,19 @@ public class ProtocolParameter { TEXT, /** - * A password parameter, whose value is sensitive and must be hidden. + * A username parameter. This parameter type generally behaves + * identically to arbitrary text parameters, but has semantic + * differences. If credential pass-through is in use, the value for this + * parameter may be automatically provided using the credentials + * originally used by the user to authenticate. + */ + USERNAME, + + /** + * A password parameter, whose value is sensitive and must be hidden. If + * credential pass-through is in use, the value for this parameter may + * be automatically provided using the credentials originally used by + * the user to authenticate. */ PASSWORD, diff --git a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/crud/protocols/List.java b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/crud/protocols/List.java index f8eda88e9..7efcf6b06 100644 --- a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/crud/protocols/List.java +++ b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/crud/protocols/List.java @@ -149,6 +149,11 @@ public class List extends RestrictedHttpServlet { xml.writeAttribute("type", "text"); break; + // Username parameter + case USERNAME: + xml.writeAttribute("type", "username"); + break; + // Password parameter case PASSWORD: xml.writeAttribute("type", "password"); diff --git a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/xml/protocol/ParamTagHandler.java b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/xml/protocol/ParamTagHandler.java index c4d4170c9..26336432e 100644 --- a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/xml/protocol/ParamTagHandler.java +++ b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/xml/protocol/ParamTagHandler.java @@ -57,6 +57,10 @@ public class ParamTagHandler implements TagHandler { else if ("numeric".equals(type)) protocolParameter.setType(ProtocolParameter.Type.NUMERIC); + // Username field + else if ("username".equals(type)) + protocolParameter.setType(ProtocolParameter.Type.USERNAME); + // Password field else if ("password".equals(type)) protocolParameter.setType(ProtocolParameter.Type.PASSWORD); diff --git a/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/rdp.xml b/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/rdp.xml index ebe82ae8f..7bd39404f 100644 --- a/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/rdp.xml +++ b/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/rdp.xml @@ -3,7 +3,7 @@ - + diff --git a/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/ssh.xml b/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/ssh.xml index a04327b1e..8239e7160 100644 --- a/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/ssh.xml +++ b/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/ssh.xml @@ -3,7 +3,7 @@ - + diff --git a/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/telnet.xml b/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/telnet.xml index 09e1f2443..fe797436b 100644 --- a/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/telnet.xml +++ b/guacamole/src/main/resources/net/sourceforge/guacamole/net/protocols/telnet.xml @@ -3,7 +3,7 @@ - +