[Bug 1787267] Re: Can't type | ( pipe ) over vnc

 Christian Ehrhardt  1787267 at bugs.launchpad.net
Thu Sep 13 13:07:53 UTC 2018


** Description changed:

  [Impact]
  
  After upgrading from 16.04 to 18.04, users are unable to type a | or >
  in their virtual machines when accessing them via vnc.  This happened
  because upstream added a key to the keymap that can also produce these
  symbols and exists only on European keyboards, but it uses different
  modifier keys to produce these symbols so trying to type a | or a >
  results in a < instead.  Simply removing this new non-existent scan code
  from the keymap resolves the issue.
  
  [Test Case]
  
- Start a virtual machine and connect to it via vnc.  I am using
- "tightvnc" on Windows, and upstream indicated that some vnc clients send
- the raw scan code instead of keysyms, in which case this issue would not
- arise.
+ Start a virtual machine and connect to it via vnc.  I am using "tightvnc" on Windows, and upstream indicated that some vnc clients send the raw scan code instead of keysyms, in which case this issue would not arise.
+ That doesn't have to start a lot and can be as trivial as :
+ $ qemu-system-x86_64 -vnc :1 -cdrom <path to ubuntu iso>
+ $ vncviewer 127.0.0.1:5901
+ # no need to fully boot that, just go to the menu
+ # now on a system with us keyboard (or just en_us input layout) try to use a | which will not work.
+ 
+ With the fix you will be able to type the chars again as you'd expect
+ it.
  
  [Regression Potential]
  
  There should be no regression potential for actual en-us keyboards since
  this key does not exist.  European keyboards may be unable to use this
  other key they have unless they set the correct keymap, but all of its
  symbols are duplicates from other keys on the keyboard, rendering it
  fully redundant.
  
  [Notes]
  
  Upstream has already added logic to pick the mapping the matches the
  current modifier keys to resolve this, so cosmic should be unaffected
  and so this patch only applies to bionic.
  
  [Original Description]
  
  I tried booting some Ubuntu images today on my Xen server where I use
  VNC to remotely access the VM, and am unable to type a | ( pipe ).  I
  opened the keyboard layout utility and when I press the \ key, it
  recognizes it, but when I hold shift and press the key, it claims that I
  am pressing some key between left shift and Z that does not actually
  exist on US keyboards, and that types a > instead.
  
  This did not used to happen, and probably started when I upgraded the
  server from 16.04 to 18.04 a while back and I just haven't been testing
  VMs since then.

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1787267

Title:
  Can't type | ( pipe ) over vnc

Status in qemu source package in Bionic:
  In Progress
Status in qemu source package in Cosmic:
  Fix Released

Bug description:
  [Impact]

  After upgrading from 16.04 to 18.04, users are unable to type a | or >
  in their virtual machines when accessing them via vnc.  This happened
  because upstream added a key to the keymap that can also produce these
  symbols and exists only on European keyboards, but it uses different
  modifier keys to produce these symbols so trying to type a | or a >
  results in a < instead.  Simply removing this new non-existent scan
  code from the keymap resolves the issue.

  [Test Case]

  Start a virtual machine and connect to it via vnc.  I am using "tightvnc" on Windows, and upstream indicated that some vnc clients send the raw scan code instead of keysyms, in which case this issue would not arise.
  That doesn't have to start a lot and can be as trivial as :
  $ qemu-system-x86_64 -vnc :1 -cdrom <path to ubuntu iso>
  $ vncviewer 127.0.0.1:5901
  # no need to fully boot that, just go to the menu
  # now on a system with us keyboard (or just en_us input layout) try to use a | which will not work.

  With the fix you will be able to type the chars again as you'd expect
  it.

  [Regression Potential]

  There should be no regression potential for actual en-us keyboards
  since this key does not exist.  European keyboards may be unable to
  use this other key they have unless they set the correct keymap, but
  all of its symbols are duplicates from other keys on the keyboard,
  rendering it fully redundant.

  [Notes]

  Upstream has already added logic to pick the mapping the matches the
  current modifier keys to resolve this, so cosmic should be unaffected
  and so this patch only applies to bionic.

  [Original Description]

  I tried booting some Ubuntu images today on my Xen server where I use
  VNC to remotely access the VM, and am unable to type a | ( pipe ).  I
  opened the keyboard layout utility and when I press the \ key, it
  recognizes it, but when I hold shift and press the key, it claims that
  I am pressing some key between left shift and Z that does not actually
  exist on US keyboards, and that types a > instead.

  This did not used to happen, and probably started when I upgraded the
  server from 16.04 to 18.04 a while back and I just haven't been
  testing VMs since then.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/bionic/+source/qemu/+bug/1787267/+subscriptions



More information about the Ubuntu-sponsors mailing list