tamano
Posts: 2
Joined: Wed Aug 21, 2019 11:28 am

Pi3 - USB Omnikey 5022 - PCSC_SCAN - SCardEstablishContext: Service not available

Wed Aug 21, 2019 11:42 am

Hello,

I am using the rfid reader Hid Omnikey 5022 on my Raspberry3. i installed : - libsystemd-dev - libudev-dev - pcsc-lite-1.8.25 - libusb-1.0.22 - ccid-1.4.31 - pcsc-tools-1.5.4 - libpcsclite-dev - libccid - libpcsc-perl

This reader should work with the CCID driver (https://ccid.apdu.fr/ccid/shouldwork.html)

when i try the command :

Code: Select all

pcsc_scan
it returns the error :
SCardEstablishContext: Service not available
Here's the complete log (

Code: Select all

strace pcsc_scan
) :
[email protected]:/home/pi/Downloads# strace pcsc_scan execve("/usr/local/bin/pcsc_scan", ["pcsc_scan"], [/* 59 vars */]) = 0 brk(NULL) = 0x6ec000 uname({sysname="Linux", nodename="raspberrypi", ...}) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) mmap2(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x76f0d000 access("/etc/ld.so.preload", R_OK) = 0 open("/etc/ld.so.preload", O_RDONLY|O_CLOEXEC) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=42, ...}) = 0 mmap2(NULL, 42, PROT_READ|PROT_WRITE, MAP_PRIVATE, 3, 0) = 0x76f0c000 close(3) = 0 open("/usr/lib/arm-linux-gnueabihf/libarmmem.so", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\210\5\0\0004\0\0\0"..., 512) = 512 lseek(3, 20868, SEEK_SET) = 20868 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1000) = 1000 lseek(3, 20540, SEEK_SET) = 20540 read(3, "A,\0\0\0aeabi\0\1\"\0\0\0\0056\0\6\6\10\1\t\1\n\3\f\1\22\4\24"..., 45) = 45 fstat64(3, {st_mode=S_IFREG|0644, st_size=21868, ...}) = 0 mmap2(NULL, 86080, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x76eca000 mprotect(0x76ecf000, 61440, PROT_NONE) = 0 mmap2(0x76ede000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x76ede000 close(3) = 0 munmap(0x76f0c000, 42) = 0 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=82593, ...}) = 0 mmap2(NULL, 82593, PROT_READ, MAP_PRIVATE, 3, 0) = 0x76eb5000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/usr/lib/arm-linux-gnueabihf/libpcsclite.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\360\21\0\0004\0\0\0"..., 512) = 512 lseek(3, 33124, SEEK_SET) = 33124 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1000) = 1000 lseek(3, 32801, SEEK_SET) = 32801 read(3, "A,\0\0\0aeabi\0\1\"\0\0\0\0056\0\6\6\10\1\t\1\n\2\22\4\24\1\25"..., 45) = 45 fstat64(3, {st_mode=S_IFREG|0644, st_size=34124, ...}) = 0 mmap2(NULL, 101576, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x76e9c000 mprotect(0x76ea4000, 61440, PROT_NONE) = 0 mmap2(0x76eb3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x76eb3000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/arm-linux-gnueabihf/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0dI\0\0004\0\0\0"..., 512) = 512 lseek(3, 125740, SEEK_SET) = 125740 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1560) = 1560 lseek(3, 90536, SEEK_SET) = 90536 read(3, "A.\0\0\0aeabi\0\1$\0\0\0\0056\0\6\6\10\1\t\1\n\2\22\4\23\1\24"..., 47) = 47 fstat64(3, {st_mode=S_IFREG|0755, st_size=127300, ...}) = 0 mmap2(NULL, 164432, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x76e73000 mprotect(0x76e89000, 61440, PROT_NONE) = 0 mmap2(0x76e98000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x76e98000 mmap2(0x76e9a000, 4688, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x76e9a000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/arm-linux-gnueabihf/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\[email protected]\1\0004\0\0\0"..., 512) = 512 lseek(3, 1231820, SEEK_SET) = 1231820 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 2880) = 2880 lseek(3, 1228284, SEEK_SET) = 1228284 read(3, "A.\0\0\0aeabi\0\1$\0\0\0\0056\0\6\6\10\1\t\1\n\2\22\4\23\1\24"..., 47) = 47 fstat64(3, {st_mode=S_IFREG|0755, st_size=1234700, ...}) = 0 mmap2(NULL, 1303872, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x76d34000 mprotect(0x76e5d000, 65536, PROT_NONE) = 0 mmap2(0x76e6d000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x129000) = 0x76e6d000 mmap2(0x76e70000, 9536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x76e70000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/arm-linux-gnueabihf/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0P\t\0\0004\0\0\0"..., 512) = 512 lseek(3, 8680, SEEK_SET) = 8680 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1120) = 1120 lseek(3, 8328, SEEK_SET) = 8328 read(3, "A.\0\0\0aeabi\0\1$\0\0\0\0056\0\6\6\10\1\t\1\n\2\22\4\23\1\24"..., 47) = 47 fstat64(3, {st_mode=S_IFREG|0644, st_size=9800, ...}) = 0 mmap2(NULL, 73912, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x76d21000 mprotect(0x76d23000, 61440, PROT_NONE) = 0 mmap2(0x76d32000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x76d32000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/arm-linux-gnueabihf/librt.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0 \27\0\0004\0\0\0"..., 512) = 512 lseek(3, 25352, SEEK_SET) = 25352 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1280) = 1280 lseek(3, 24940, SEEK_SET) = 24940 read(3, "A.\0\0\0aeabi\0\1$\0\0\0\0056\0\6\6\10\1\t\1\n\2\22\4\23\1\24"..., 47) = 47 fstat64(3, {st_mode=S_IFREG|0644, st_size=26632, ...}) = 0 mmap2(NULL, 90640, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x76d0a000 mprotect(0x76d10000, 61440, PROT_NONE) = 0 mmap2(0x76d1f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x76d1f000 close(3) = 0 mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x76f0b000 set_tls(0x76f0b980, 0x76f0c058, 0x76f11050, 0x76f0b980, 0x76f11050) = 0 mprotect(0x76e6d000, 8192, PROT_READ) = 0 mprotect(0x76e98000, 4096, PROT_READ) = 0 mprotect(0x76d1f000, 4096, PROT_READ) = 0 mprotect(0x76d32000, 4096, PROT_READ) = 0 mprotect(0x76eb3000, 4096, PROT_READ) = 0 mprotect(0x76eca000, 20480, PROT_READ|PROT_WRITE) = 0 mprotect(0x76eca000, 20480, PROT_READ|PROT_EXEC) = 0 cacheflush(0x76eca000, 0x76ecf000, 0, 0x15, 0) = 0 mprotect(0x76ede000, 4096, PROT_READ) = 0 mprotect(0x22000, 4096, PROT_READ) = 0 mprotect(0x76f10000, 4096, PROT_READ) = 0 munmap(0x76eb5000, 82593) = 0 set_tid_address(0x76f0b528) = 3210 set_robust_list(0x76f0b530, 12) = 0 rt_sigaction(SIGRTMIN, {sa_handler=0x76e772b0, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x76d606c0}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {sa_handler=0x76e77390, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x76d606c0}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 ugetrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 rt_sigaction(SIGINT, {sa_handler=0x11ea8, sa_mask=[INT], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x76d606b0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0 stat64("/var/run/pcscd/pcscd.comm", {st_mode=S_IFSOCK|0666, st_size=0, ...}) = 0 brk(NULL) = 0x6ec000 brk(0x70d000) = 0x70d000 socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0) = 3 connect(3, {sa_family=AF_UNIX, sun_path="/var/run/pcscd/pcscd.comm"}, 28) = 0 fcntl64(3, F_GETFL) = 0x2 (flags O_RDWR) fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK) = 0 _newselect(4, NULL, [3], NULL, NULL) = 1 (out [3]) send(3, "\f\0\0\0\21\0\0\0", 8, MSG_NOSIGNAL) = 8 _newselect(4, NULL, [3], NULL, NULL) = 1 (out [3]) send(3, "\4\0\0\0\3\0\0\0\0\0\0\0", 12, MSG_NOSIGNAL) = 12 _newselect(4, [3], NULL, NULL, NULL) = 1 (in [3]) read(3, "\4\0\0\0\4\0\0\0\35\0\20\200", 12) = 12 ioctl(2, TCGETS, {B38400 opost isig icanon echo ...}) = 0 write(2, "\33[31mSCardEstablishContext: Serv"..., 55SCardEstablishContext: Service not available. ) = 55 exit_group(-1) = ? +++ exited with 255 +++

here is the pcscd's log (notice that the pcscd was running when i used the command pcsc_scan) (see lines started with "***") :
[email protected]:~/Documents $ sudo pcscd -f -d 00000000 [1995817744] debuglog.c:299:DebugLogSetLevel() debug level=debug 00000814 [1995817744] configfile.l:360:DBGetReaderList() Parsing conf file: /usr/local/etc/reader.conf.d 00000165 [1995817744] pcscdaemon.c:662:main() pcsc-lite 1.8.25 daemon ready. 00031408 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0002, path: /dev/bus/usb/001/001 00001259 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x1D6B, PID: 0x0002, path: /dev/bus/usb/001/001 00001041 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0424, PID: 0x2514, path: /dev/bus/usb/001/002 00001051 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0424, PID: 0x2514, path: /dev/bus/usb/001/003 00001098 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0424, PID: 0x7800, path: /dev/bus/usb/001/007 00001096 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0424, PID: 0x2514, path: /dev/bus/usb/001/003 00001022 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0461, PID: 0x4D64, path: /dev/bus/usb/001/004 00001046 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0424, PID: 0x2514, path: /dev/bus/usb/001/003 00001009 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0749, PID: 0x1000, path: /dev/bus/usb/001/006 00001003 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0749, PID: 0x1000, path: /dev/bus/usb/001/006 00001038 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0424, PID: 0x2514, path: /dev/bus/usb/001/003 00001001 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0424, PID: 0x2514, path: /dev/bus/usb/001/002 00000955 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x076B, PID: 0x5022, path: /dev/bus/usb/001/024 00000143 [1995817744] hotplug_libudev.c:440:HPAddDevice() Adding USB device: HID Global OMNIKEY 5022 Smart Card Reader 00000489 [1995817744] readerfactory.c:1075:RFInitializeReader() Attempting startup of HID Global OMNIKEY 5022 Smart Card Reader [OMNIKEY 5022 Smart Card Reader] (KJ-13171286-1904-000290) 00 00 using /usr/local/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Linux/libccid.so 00001091 [1995817744] readerfactory.c:950:RFBindFunctions() Loading IFD Handler 3.0 00000413 [1995817744] ifdhandler.c:1961:init_driver() Driver version: 1.4.31 00006619 [1995817744] ifdhandler.c:1978:init_driver() LogLevel: 0x0003 00000131 [1995817744] ifdhandler.c:1989:init_driver() DriverOptions: 0x0000 00001393 [1995817744] ifdhandler.c:110:CreateChannelByNameOrChannel() Lun: 0, device: usb:076b/5022:libudev:0:/dev/bus/usb/001/024 00000176 [1995817744] ccid_usb.c:302:OpenUSBByName() Using: /usr/local/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist 00019948 [1995817744] ccid_usb.c:320:OpenUSBByName() ifdManufacturerString: Ludovic Rousseau ([email protected]) 00000114 [1995817744] ccid_usb.c:321:OpenUSBByName() ifdProductString: Generic CCID driver 00000032 [1995817744] ccid_usb.c:322:OpenUSBByName() Copyright: This driver is protected by terms of the GNU Lesser General Public License version 2.1, or (at your option) any later version. 00112071 [1995817744] ccid_usb.c:660:OpenUSBByName() Found Vendor/Product: 076B/5022 (HID Global OMNIKEY 5022 Smart Card Reader) 00000035 [1995817744] ccid_usb.c:662:OpenUSBByName() Using USB bus/device: 1/24 00000027 [1995817744] ccid_usb.c:722:OpenUSBByName() bNumDataRatesSupported is 0 00015695 [1995817744] ifdhandler.c:381:IFDHGetCapabilities() tag: 0xFB3, usb:076b/5022:libudev:0:/dev/bus/usb/001/024 (lun: 0) 00000038 [1995817744] readerfactory.c:396:RFAddReader() Using the reader polling thread 00001081 [1973891968] ifdhandler.c:1154:IFDHPowerICC() action: PowerUp, usb:076b/5022:libudev:0:/dev/bus/usb/001/024 (lun: 0) 00014151 [1973891968] eventhandler.c:289:EHStatusHandlerThread() powerState: POWER_STATE_POWERED 00000003 [1995817744] ifdhandler.c:381:IFDHGetCapabilities() tag: 0xFAE, usb:076b/5022:libudev:0:/dev/bus/usb/001/024 (lun: 0) 00000074 [1973891968] Card ATR: 3B 8F 80 01 80 4F 0C A0 00 00 03 06 0B 00 14 00 00 00 00 77 00000040 [1995817744] ifdhandler.c:476:IFDHGetCapabilities() Reader supports 1 slot(s) 00000916 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0424, PID: 0x2514, path: /dev/bus/usb/001/002 00000463 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0B05, PID: 0x7774, path: /dev/bus/usb/001/021 00000415 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0B05, PID: 0x7774, path: /dev/bus/usb/001/021 00000432 [1995817744] hotplug_libudev.c:301:get_driver() Looking for a driver for VID: 0x0424, PID: 0x2514, path: /dev/bus/usb/001/002 00094258 [1973891968] ifdhandler.c:1154:IFDHPowerICC() action: PowerDown, usb:076b/5022:libudev:0:/dev/bus/usb/001/024 (lun: 0) 00034057 [1973891968] eventhandler.c:482:EHStatusHandlerThread() powerState: POWER_STATE_UNPOWERED ***17658438 [1995817744] winscard_msg_srv.c:255:ProcessEventsServer() Common channel packet arrival ***00000116 [1995817744] winscard_msg_srv.c:267:ProcessEventsServer() ProcessCommonChannelRequest detects: 14 ***00000033 [1995817744] pcscdaemon.c:133:SVCServiceRunLoop() A new context thread creation is requested: 14 ***00000229 [1955591040] winscard_svc.c:340:ContextThread() Authorized PC/SC client ***00000039 [1955591040] winscard_svc.c:344:ContextThread() Thread is started: dwClientID=14, threadContext @0x14208d8 ***00000051 [1955591040] winscard_svc.c:362:ContextThread() Received command: CMD_VERSION from client 14 ***00000064 [1955591040] winscard_svc.c:374:ContextThread() Client is protocol version 4:3 ***00000026 [1955591040] winscard_svc.c:383:ContextThread() Client protocol is 4:3 ***00000025 [1955591040] winscard_svc.c:385:ContextThread() Server protocol is 4:4 ***00000025 [1955591040] winscard_svc.c:394:ContextThread() CMD_VERSION rv=0x8010001D for client 14 ***00000794 [1955591040] winscard_svc.c:354:ContextThread() Client die: 14 ***00000074 [1955591040] winscard_svc.c:1055:MSGCleanupClient() Thread is stopping: dwClientID=14, threadContext @0x14208d8 ***00000028 [1955591040] winscard_svc.c:1061:MSGCleanupClient() Freeing SCONTEXT @0x14208d8 07054799 [1973891968] eventhandler.c:358:EHStatusHandlerThread() Card Removed From HID Global OMNIKEY 5022 Smart Card Reader [OMNIKEY 5022 Smart Card Reader] (KJ-13171286-1904-000290) 00 00 02336437 [1973891968] ifdhandler.c:1154:IFDHPowerICC() action: PowerUp, usb:076b/5022:libudev:0:/dev/bus/usb/001/024 (lun: 0) 00014370 [1973891968] eventhandler.c:406:EHStatusHandlerThread() powerState: POWER_STATE_POWERED 00000070 [1973891968] eventhandler.c:423:EHStatusHandlerThread() Card inserted into HID Global OMNIKEY 5022 Smart Card Reader [OMNIKEY 5022 Smart Card Reader] (KJ-13171286-1904-000290) 00 00 00000102 [1973891968] Card ATR: 3B 8F 80 01 80 4F 0C A0 00 00 03 06 0B 00 14 00 00 00 00 77 00593095 [1973891968] eventhandler.c:482:EHStatusHandlerThread() powerState: POWER_STATE_UNPOWERED 00000501 [1973891968] eventhandler.c:358:EHStatusHandlerThread() Card Removed From HID Global OMNIKEY 5022 Smart Card Reader [OMNIKEY 5022 Smart Card Reader] (KJ-13171286-1904-000290) 00 00
Thank you for helping me !


Return to “General discussion”