[ 
https://issues.apache.org/jira/browse/GUACAMOLE-422?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16499204#comment-16499204
 ] 

Nick Couchman commented on GUACAMOLE-422:
-----------------------------------------

{quote}
That would likely be how it ends up being implemented at the webapp level, yes.
...
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.
{quote}

Sounds good.  To do my testing I just added a parameter to the RDP and SSH 
connections that allows for setting it, but I think ideally we want to be able 
to use a JavaScript library (JSTZ) to detect the timezone and have it sent over 
automatically.  There are a few caveats - like, on Windows Server it only works 
when you've installed the Remote Desktop role, it doesn't work with the default 
RDP-based administration.  On SSH, you have to enable the TZ parameter in the 
sshd_config.  So, it isn't something that's ever go to work out-of-the-box, but 
also isn't that hard to configure.

> 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)

Reply via email to