VirtualBox

Opened 6 years ago

#18015 new defect

A forwarded Dectel CI692 doesn't work if the controller is USB 2.0

Reported by: jsible Owned by:
Component: USB Version: VirtualBox 5.2.18
Keywords: Cc:
Guest type: Linux Host type: all

Description

When I use USB forwarding and a virtual USB 2.0 controller to attach a Dectel CI692 smart card reader to a CentOS 7.5 guest, attempts to use the smart card fail, with an error that traces back to "libusb_error_timeout" from PC/SC on the guest. The problem seems specific to this narrow configuration. Here's what I've discovered by testing various combinations of things:

  • The problem occurs on both a 2017 MacBook Pro running High Sierra and a Dell OptiPlex 7050 running CentOS 7.5 as the hosts.
  • The problem occurs whether the real USB port on the host is USB 2.0 or USB 3.0.
  • The problem doesn't occur if I use a virtual USB 1.1 controller or a virtual USB 3.0 controller. For now, this is my workaround.
  • The problem only occurs with certain smart card readers. When I tried it with an HID Omnikey smart card reader instead, it worked fine.
  • The problem doesn't occur if I use the reader in a real USB 2.0 port with CentOS 7.5 on bare metal.
  • The problem doesn't occur if I just run "pcsc_scan"; it sees the smart card fine. The problem only occurs when I try to use the keys on it, such as by running "ssh-keygen -D /usr/lib64/pkcs11/libcoolkeypk11.so".

Steps to reproduce:

  • Install CentOS 7.5 in a guest
  • Set the guest to use a USB 2.0 controller, and forward the Dectel CI692 to it
  • Insert a smart card into the Dectel CI692
  • Install the packages "epel-release", "pcsc-tools", and "coolkey" in the guest
  • Run "ssh-keygen -D /usr/lib64/pkcs11/libcoolkeypk11.so" in the guest

Expected result: the public keys from the smart card should be printed. Actual result: the command fails with the message "cannot read public key from pkcs11".

Attached are two logs: one with a USB 1.1 controller, where the command works correctly, and one with a USB 2.0 controller, where the problem occurs. Both logs were saved immediately after running the ssh-keygen command.

Attachments (2)

20.log (77.6 KB ) - added by jsible 6 years ago.
The logs with a USB 2.0 controller, where the bug occurs.
11.log (76.4 KB ) - added by jsible 6 years ago.
The logs with a USB 1.1 controller, where the bug does not occur.

Download all attachments as: .zip

Change History (2)

by jsible, 6 years ago

Attachment: 20.log added

The logs with a USB 2.0 controller, where the bug occurs.

by jsible, 6 years ago

Attachment: 11.log added

The logs with a USB 1.1 controller, where the bug does not occur.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use