You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@guacamole.apache.org by GitBox <gi...@apache.org> on 2019/08/09 01:03:29 UTC

[GitHub] [guacamole-server] WestonThayer opened a new pull request #236: [GUACAMOLE-859] Incorrect Caps Lock keysym sent to Windows via RDP

WestonThayer opened a new pull request #236: [GUACAMOLE-859] Incorrect Caps Lock keysym sent to Windows via RDP
URL: https://github.com/apache/guacamole-server/pull/236
 
 
   When connected with a Guacamole RDP session, the keysym for Caps Lock (0xffe5) is sent over RDP as scancode 0xe03a. Windows does not understand this scancode, thus does not generate the correct VK (Virtual Key) events. Removing +ext from the keymap sends the scancode 0x003a, which is correctly recognized by Windows as Caps Lock. This enables Windows applications to listen for key down and key up events on the Caps Lock key while connected via a Guacamole RDP session.
   
   Note: this issue likely went un-noticed for a long time because it only impacts the key up and down events for the Caps Lock key, not Caps Lock's effect on sending uppercase [A-Z] characters.
   
   ## Testing notes
   
   Pulling up this [JSBin](https://jsbin.com/reviciceke/2/edit?js,console,output) in the remote desktop is an easy way to see the key up/down events that your browser is receiving. However, I found it helpful to inspect the low-level events that Windows sends to applications so I can see the scancodes and VK codes. To view those, I've [attached a small test `.exe`](https://github.com/apache/guacamole-server/files/3484231/main.exe.txt) (remove the `.txt` extension) that prints the events to std out. You can also compile it from source using [these instructions](https://gist.github.com/WestonThayer/9b7a0e04b045be1656ce9f01de141cd2).
   
   I have not tested RDP connections to non-Windows RDP servers. It'd be great if someone could test with a Linux or macOS RDP server to confirm that they weren't expecting a 0xe03a scancode. After searching the web a fair bit, I suspect not. I couldn't find anything on a 0xe03a scancode online.
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services