Bug 211702

Summary: smartcard reader doesn't function on x86_64
Product: [Fedora] Fedora Reporter: Jeremy Katz <katzj>
Component: ccidAssignee: Bob Relyea <rrelyea>
Status: CLOSED NOTABUG QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: ludovic.rousseau
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-10-25 14:45:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jeremy Katz 2006-10-20 21:48:31 UTC
Using one of the "real" smartcard readers (as opposed to the coolkey reader),
pcscd isn't able to actually access the card reader. 

[root@orodruin src]# USB_DEBUG=1 /usr/sbin/pcscd -f -d
pcscdaemon.c:259:main() pcscd set to foreground with debug send to stderr
debuglog.c:207:DebugLogSetLevel() debug level=debug
pcscdaemon.c:464:main() pcsc-lite 1.3.1 daemon ready.
usb_set_debug: Setting debugging level to 1 (on)
usb_os_init: Found USB VFS at /dev/bus/usb
hotplug_libusb.c:407:HPAddHotPluggable() Adding USB device: 005:015
readerfactory.c:1095:RFInitializeReader() Attempting startup of SCM SCR 335
(60800685) 00 00.
readerfactory.c:967:RFBindFunctions() Loading IFD Handler 3.0
ifdhandler.c:1155:init_driver() LogLevel: 0x0003
ifdhandler.c:1165:init_driver() DriverOptions: 0x0000
ifdhandler.c:76:IFDHCreateChannelByName() lun: 0, device:
usb:04e6/5115:libusb:005:015
usb_set_debug: Setting debugging level to 1 (on)
usb_os_init: Found USB VFS at /dev/bus/usb
ccid_usb.c:231:OpenUSBByName() Manufacturer: Ludovic Rousseau
(ludovic.rousseau)
ccid_usb.c:241:OpenUSBByName() ProductString: Generic CCID driver v1.0.1
ccid_usb.c:247:OpenUSBByName() Copyright: This driver is protected by terms of
the GNU General Public License version 2, or (at your option) any later version.
Check that you have permissions to write to 005/015 and, if you don't, that you
set up hotplug (http://linux-hotplug.sourceforge.net/) correctly.
ccid_usb.c:389:OpenUSBByName() Can't claim interface 005/015: Device or resource
busy
ifdhandler.c:94:IFDHCreateChannelByName() failed
readerfactory.c:1130:RFInitializeReader() Open Port 200000 Failed
(usb:04e6/5115:libusb:005)
readerfactory.c:1012:RFUnloadReader() Unloading reader driver.
readerfactory.c:251:RFAddReader() SCM SCR 335 (60800685) init failed.


Works fine on my i386 laptop, though.

Comment 1 Ludovic Rousseau 2006-10-21 09:49:25 UTC
It looks like a permission problem:
Check that you have permissions to write to 005/015 and, if you don't, that you
set up hotplug (http://linux-hotplug.sourceforge.net/) correctly.

It also looks like the device is already used by another driver:
ccid_usb.c:389:OpenUSBByName() Can't claim interface 005/015: Device or resource
bus

I would be surprised it is related to x86_64

Comment 2 Jeremy Katz 2006-10-21 12:50:57 UTC
Permissions were fine (0644, pcscd running as root) and SELinux labeling was
also correct.  I'm also not clear how usb_claim_interface returning EBUSY
implies a permission problem at all, but neither here nor there.

Comment 3 Ludovic Rousseau 2006-10-25 08:32:27 UTC
I just tried version 1.1.0 of the CCID driver on a AMD64 machine (running Ubuntu in 64-bits mode) and 
the driver works like a charm.

Check that you do not have another program also grabing the reader. OpenCT maybe.

Comment 4 Jeremy Katz 2006-10-25 14:45:04 UTC
Indeed, openct it was.  I'm not even sure when or why I installed the package