Hi. I have a ACR30U reader from ACS. It is not found on the usb bus. I am running RedHat 9.0, from /var/log/dmesg: Linux version 2.4.20-8 ([EMAIL PROTECTED]) (gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #1 Thu Mar 13 17:54:28 EST 2003
I downloaded the driver from
http://www.acs.com.hk/downloads/acs30USBLinuxDriver-062402.tar.gz
and as I followed the instructions in the readme.txt it all goes well ( "usbdevfs" is mounted, 2 drivers for USB devices are loaded) but when I do connect the reader and write cat /proc/bus/usb/devices I get T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 0.00 S: Product=USB UHCI Root Hub S: SerialNumber=fce0 C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
So there is no line like: [Vendor=072f ProdID=0001 Rev= 2.00]
The reader is not detected!
I have also installed pcsc-lite 1.2.0 and run the testpcsc and it stops when it tries to detect the reader:
$ testpcsc
MUSCLE PC/SC Lite Test Program
Testing SCardEstablishContext : Command successful. Testing SCardGetStatusChange
It just doesnt do anything.
I also tried, as root
strace /usr/local/sbin/pcscd -f -d stdout and I get
execve("/usr/local/sbin/pcscd", ["/usr/local/sbin/pcscd", "-f", "-d",
"stdout"], [/* 41 vars */]) = 0
uname({sys="Linux", node="localhost", ...}) = 0
brk(0) = 0x805e968
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x40016000
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=97230, ...}) = 0
old_mmap(NULL, 97230, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40017000
close(3) = 0
open("/usr/lib/libusb-0.1.so.4", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\370\20"..., 512)
= 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=25004, ...}) = 0
old_mmap(NULL, 27976, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4002f000
old_mmap(0x40034000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x4000) = 0x40034000
close(3) = 0
open("/lib/libdl.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360\26"..., 512)
= 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=15084, ...}) = 0
old_mmap(NULL, 8620, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40036000
old_mmap(0x40038000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x2000) = 0x40038000
close(3) = 0
open("/lib/tls/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320>\0"..., 512)
= 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=79744, ...}) = 0
old_mmap(NULL, 50040, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40039000
old_mmap(0x40043000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0xa000) = 0x40043000
old_mmap(0x40044000, 4984, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40044000
close(3) = 0
open("/lib/tls/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`V\1B4\0"..., 512)
= 512fstat64(3, {st_mode=S_IFREG|0755, st_size=1531064, ...}) = 0
old_mmap(0x42000000, 1257224, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x42000000
old_mmap(0x4212e000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x12e000) = 0x4212e000
old_mmap(0x42131000, 7944, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x42131000
close(3) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x40046000
set_thread_area({entry_number:-1 -> 6, base_addr:0x400464a0,
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1}) = 0
munmap(0x40017000, 97230) = 0
set_tid_address(0x400464e8) = 30728
rt_sigaction(SIGRTMIN, {0x4003ce30, [], SA_RESTORER, 0x40042618}, NULL, 8)
= 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN], NULL, 8) = 0
getrlimit(0x3, 0xbfffdb54) = 0
write(2, "pcscdaemon.c:251 main: pcscd set"..., 47pcscdaemon.c:251 main:
pcscd set to foreground
) = 47
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40017000
write(1, "pcscdaemon.c:265 main: debug mes"..., 48pcscdaemon.c:265 main:
debug messages to stdout
) = 48
stat64("/var/run/pcscd.pub", 0xbfffdb00) = -1 ENOENT (No such file or
directory)rt_sigaction(SIGQUIT, {0x804c990, [QUIT],
SA_RESTORER|SA_RESTART, 0x420275c8}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {0x804c990, [TERM], SA_RESTORER|SA_RESTART,
0x420275c8}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x804c990, [INT], SA_RESTORER|SA_RESTART,
0x420275c8}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGHUP, {0x804c990, [HUP], SA_RESTORER|SA_RESTART,
0x420275c8}, {SIG_DFL}, 8) = 0
stat64("/var/run", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
brk(0) = 0x805e968
brk(0x805f968) = 0x805f968
brk(0) = 0x805f968
brk(0x8060000) = 0x8060000
brk(0) = 0x8060000
brk(0x8061000) = 0x8061000
rmdir("/var/run/pcscd.pub") = -1 ENOENT (No such file or
directory)
open("/var/run/pcscd.pub", O_RDWR|O_CREAT, 0644) = 3
chmod("/var/run/pcscd.pub", 0644) = 0
lseek(3, 65536, SEEK_SET) = 65536
write(3, "\0", 1) = 1
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0) = 0x40018000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x1) = 0x40019000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x2) = 0x4001a000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x3) = 0x4001b000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x4) = 0x4001c000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x5) = 0x4001d000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x6) = 0x4001e000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x7) = 0x4001f000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x8) = 0x40020000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0x9) = 0x40021000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xa) = 0x40022000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xb) = 0x40023000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xc) = 0x40024000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xd) = 0x40025000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xe) = 0x40026000
mmap2(NULL, 112, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0xf) = 0x40027000
open("/etc/reader.conf", O_RDONLY) = -1 ENOENT (No such file or
directory)
write(1, "pcscdaemon.c:427 main: warning: "..., 53pcscdaemon.c:427 main:
warning: no reader.conf found
) = 53
write(1, "pcscdaemon.c:445 main: pcsc-lite"..., 47pcscdaemon.c:445 main:
pcsc-lite daemon ready.
) = 47
rt_sigaction(SIGQUIT, {0x804c990, [QUIT], SA_RESTORER|SA_RESTART,
0x420275c8}, {0x804c990, [QUIT], SA_RESTORER|SA_RESTART, 0x420275c8}, 8) =
0
rt_sigaction(SIGTERM, {0x804c990, [TERM], SA_RESTORER|SA_RESTART,
0x420275c8}, {0x804c990, [TERM], SA_RESTORER|SA_RESTART, 0x420275c8}, 8) =
0
rt_sigaction(SIGINT, {0x804c990, [INT], SA_RESTORER|SA_RESTART,
0x420275c8}, {0x804c990, [INT], SA_RESTORER|SA_RESTART, 0x420275c8}, 8) =
0
rt_sigaction(SIGHUP, {0x804c990, [HUP], SA_RESTORER|SA_RESTART,
0x420275c8}, {0x804c990, [HUP], SA_RESTORER|SA_RESTART, 0x420275c8}, 8) =
0
socket(PF_UNIX, SOCK_STREAM, 0) = 4
unlink("/var/run/pcscd.comm") = -1 ENOENT (No such file or
directory)
bind(4, {sa_family=AF_UNIX, path="/var/run/pcscd.comm"}, 22) = 0
listen(4, 1) = 0
chmod("/var/run/pcscd.comm", 0777) = 0
rt_sigaction(SIGALRM, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGHUP, {SIG_IGN}, {0x804c990, [HUP], SA_RESTORER|SA_RESTART,
0x420275c8}, 8) = 0
open("/usr/local/pcsc/drivers",
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 5fstat64(5,
{st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
fcntl64(5, F_SETFD, FD_CLOEXEC) = 0
brk(0) = 0x8061000
brk(0x8062000) = 0x8062000
getdents64(5, /* 3 entries */, 4096) = 88
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6
brk(0) = 0x8062000
brk(0x8066000) = 0x8066000
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffafb0) = -1 ENOTTY (Inappropriate ioctl
for device)
fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096) = 0
read(6, "", 8192) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6) = 0
munmap(0x40028000, 4096) = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096) = 0
read(6, "", 8192) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf80) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6) = 0
munmap(0x40028000, 4096) = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096) = 0
read(6, "", 8192) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6) = 0
munmap(0x40028000, 4096) = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096) = 0
read(6, "", 8192) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6) = 0
munmap(0x40028000, 4096) = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096) = 0
read(6, "", 8192) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6) = 0
munmap(0x40028000, 4096) = 0
open("/usr/local/pcsc/drivers/acsAcr30.bundle/Contents/Info.plist",
O_RDONLY) =
6fstat64(6, {st_mode=S_IFREG|0644, st_size=1131, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40028000
read(6, "<?xml version=\"1.0\" encoding=\"UT"..., 8192) = 1131
read(6, "", 4096) = 0
read(6, "", 8192) = 0
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl
for device)
close(6) = 0
munmap(0x40028000, 4096) = 0
getdents64(5, /* 0 entries */, 4096) = 0
close(5) = 0
mmap2(NULL, 8388608, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40047000
mprotect(0x40047000, 4096, PROT_NONE) = 0
clone(child_stack=0x408468d0,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED,
[30729], {entry_number:6, base_addr:0x40846cc0, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1,
seg_not_present:0, useable:1}) =
30729
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0}) = 0 (Timeout)
select(5, [4], NULL, NULL, {1, 0} <unfinished ...>
pcscdaemon.c:502 Preparing for suicide
pcscdaemon.c:502 Preparing for suicide
pcscdaemon.c:502 Preparing for suicide
winscard_msg.c:234 SHMProcessEvents: Select returns with failure:
Interrupted system call
pcscdaemon.c:179 SVCServiceRun: Error in SHMProcessEvents
readerfactory.c:1683 RFCleanupReaders: entering cleaning function
pcscdaemon.c:468 at_exit: cleaning /var/runso I think the problem is here:
ioctl(6, SNDCTL_TMR_TIMEBASE, 0xbfffaf90) = -1 ENOTTY (Inappropriate ioctl for device)
Please help.
Luis. _______________________________________________ Muscle mailing list [EMAIL PROTECTED] http://lists.musclecard.com/mailman/listinfo/muscle
