[
https://issues.apache.org/jira/browse/GUACAMOLE-422?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16499161#comment-16499161
]
Michael Jumper commented on GUACAMOLE-422:
------------------------------------------
{quote}
So, are you thinking like a parameter, similar to the width, height, etc., that
gets passed to the tunnel?connect endpoint?
{quote}
That would likely be how it ends up being implemented at the webapp level, yes.
At an API and protocol level, this would mean changes to
{{GuacamoleClientInformation}}, to the parts of libguac which handle the
handshake, to the parts of {{ConfiguredGuacamoleSocket}} which handle the
handshake, to the docs, etc. such that the client timezone can be forwarded in
a standardized way, just as other client information is already forwarded.
This isn't to say that we can't / shouldn't offer some parameter which allows
the timezone to be explicitly overridden at the connection level (similar to
how we provide width/height parameters for RDP), but I definitely don't think
we should hard-code magic which relies on connection parameters having
particular names. It would need to be made part of the Guacamole protocol, such
that this particular aspect is standardized (rather than arbitrary like
connection parameters).
> Timezone Redirection
> --------------------
>
> Key: GUACAMOLE-422
> URL: https://issues.apache.org/jira/browse/GUACAMOLE-422
> Project: Guacamole
> Issue Type: Improvement
> Components: guacamole-client, guacamole-server, RDP, SSH
> Reporter: Nick Couchman
> Assignee: Nick Couchman
> Priority: Minor
>
> It would be nice to support full timezone redirection from the browser client
> through to a RDP server. There are a few challenges to making this work:
> - Detect timezone at browser and pass that through to the servlet side,
> somewhere.
> - Handle timezone on servlet side and pass through to guacd
> - Allow guacd to process the timezone and add it to the RDP connection.
> For browser side, there is a JavaScript library, jstz, that can do the
> detection and provide the timezone. Handling it on the servlet side,
> however, requires some way to pass it in during the connection. This could
> be done as a parameter at login time, or a separate api call.
> Once it is into the servlet, there has to be a way to process it as a
> parameter to a connection. I'm thinking maybe a token, but not sure that's
> the right way to go. Once it's on the connection it can pass through to
> guacd.
> The biggest issue, I think, is then getting guacd to be able to add it to a
> FreeRDP connection. From my looking at the current FreeRDP source code
> (stable-1.1 branch), FreeRDP currently detects the timezone on the system
> where it's running, first using the TZ variable, then looking at
> /etc/localtime and/or /etc/TZ on the system. This means that it's always
> going to redirect the timezone of the system where guacd is running, and not
> the timezone of the browser. Unfortunately there don't seem to be any
> available functions for sending FreeRDP a string representation of a timezone
> and having it process it that way, and all of the timezone information is
> located in the FreeRDP .c file, making it difficult to write a method for
> handling this without duplicating a lot of code and all of the timezone
> tables. So, not entirely sure the best route on that angle at this point,
> but we'll see.
> Any input on whether this is a reasonable thing to address, or a corner-case
> not worth handling?
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)