On 9/7/2010 4:44 AM, Francisco Rodríguez wrote:
Hi all! I've just received my new Gemalto Prox-DU reader and I've been trying to make it work, but I've found that, in my Ubuntu 10.04 system, everytime I reboot the computer, pcscd doesn't run as expected, so I must kill the process and start a new one in order to make it work. I remember reading that this was a problem with libhal, and I guess that it was solved in the last versions of pcsc-lite, but (I don't understand why) when I execute pcsc_scan it tells me that it was compiled for version 1.5.3 of pcsc-lite fran...@toshiba-laptop:~$ pcsc_scan PC/SC device scanner V 1.4.16 (c) 2001-2009, Ludovic Rousseau <ludovic.rouss...@free.fr <mailto:ludovic.rouss...@free.fr>> Compiled with PC/SC lite version: 1.5.3 SCardEstablishContext: RPC transport error. In fact, if I use the command "pcscd --version" I get this answer fran...@toshiba-laptop:~$ pcscd --version pcsc-lite version 1.6.4. Copyright (C) 1999-2002 by David Corcoran <corco...@linuxnet.com <mailto:corco...@linuxnet.com>>. Copyright (C) 2001-2010 by Ludovic Rousseau <ludovic.rouss...@free.fr <mailto:ludovic.rouss...@free.fr>>. Copyright (C) 2003-2004 by Damien Sauveron <sauve...@labri.fr <mailto:sauve...@labri.fr>>. Report bugs to <muscle@lists.musclecard.com <mailto:muscle@lists.musclecard.com>>. Enabled features: Linux i686-pc-linux-gnu serial usb libhal usbdropdir=/usr/local/lib/pcsc/drivers ipcdir=/var/run/pcscd configdir=/usr/local/etc/reader.conf.d but if I do the same using the route /usr/sbin/pcscd, this is what I get
fran...@toshiba-laptop:~$ /usr/sbin/pcscd --version pcsc-lite version 1.5.3. Copyright (C) 1999-2002 by David Corcoran <corco...@linuxnet.com <mailto:corco...@linuxnet.com>>. Copyright (C) 2001-2008 by Ludovic Rousseau <ludovic.rouss...@free.fr <mailto:ludovic.rouss...@free.fr>>. Copyright (C) 2003-2004 by Damien Sauveron <sauve...@labri.fr <mailto:sauve...@labri.fr>>. Report bugs to <muscle@lists.musclecard.com <mailto:muscle@lists.musclecard.com>>. Enabled features: Linux libusb usbdropdir=/usr/lib/pcsc/drivers confdir=/etc ipcdir=/var/run/pcscd there is some way to asure that the version of pcscd that it's running on startup is the last one?
Last one? Only if you use the Debian tools to create a new version of the package(s) and install it/them. Try these commands to see more about pcscd: dpkg-query -S /usr/sbin/pcscd dpkg-query -s pcscd dpkg-query -L pcscd If you want to experiment with running your compiled version of the pcscd daemon which you must have installed in some directory in your path, you will need to modify the /etc/init.d/pcscd to point to your version. You may also need to modify the configure --prefix to make sure pcscd finds its version of the /etc/reader.d and /usr/lib/pcsc. And if you build any packages dependent on pcscd, you need to use your version of libpcsclite.pc with those packages to get your libpcsclite.so As Martin said, cleanup your path. With careful use you can test without removing the installed package. But if you want to do this for production, use the Debian tools to create a newer version.
I've also tried to compile pcsc-lite-1.6.4 with --disable-libhal & --enable-libusb options, but then pcsc_scan only detected the contactless interface of the reader and not the contact one. Installing it without options works fine but only if I kill pcscd process and start another one: fran...@toshiba-laptop:~$ ps -ax | grep pcscd Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html 1112 ? Ssl 0:01 /usr/sbin/pcscd 3270 pts/0 S+ 0:00 grep pcscd fran...@toshiba-laptop:~$ sudo kill -9 1112 [sudo] password for frankie: fran...@toshiba-laptop:~$ pcscd fran...@toshiba-laptop:~$ pcsc_scan PC/SC device scanner V 1.4.16 (c) 2001-2009, Ludovic Rousseau <ludovic.rouss...@free.fr <mailto:ludovic.rouss...@free.fr>> Compiled with PC/SC lite version: 1.5.3 Scanning present readers... 0: Gemalto Prox-DU [Prox-DU Contact_10500161] (10500161) 00 00 1: Gemalto Prox-DU [Prox-DU Contactless_10500161] (10500161) 01 00 Tue Sep 7 11:35:36 2010 Reader 0: Gemalto Prox-DU [Prox-DU Contact_10500161] (10500161) 00 00 Card state: Card removed, Tue Sep 7 11:35:36 2010 Reader 1: Gemalto Prox-DU [Prox-DU Contactless_10500161] (10500161) 01 00 Card state: Card removed, Tue Sep 7 11:35:46 2010 Reader 1: Gemalto Prox-DU [Prox-DU Contactless_10500161] (10500161) 01 00 Card state: Card inserted, ATR: 3B 81 80 01 80 80 ATR: 3B 81 80 01 80 80 + TS = 3B --> Direct Convention + T0 = 81, Y(1): 1000, K: 1 (historical bytes) TD(1) = 80 --> Y(i+1) = 1000, Protocol T = 0 ----- TD(2) = 01 --> Y(i+1) = 0000, Protocol T = 1 ----- + Historical bytes: 80 Category indicator byte: 80 (compact TLV data object) + TCK = 80 (correct checksum) Possibly identified card (using /usr/share/pcsc/smartcard_list.txt): 3B 81 80 01 80 80 Mifare DESFire Tue Sep 7 11:35:49 2010 Reader 1: Gemalto Prox-DU [Prox-DU Contactless_10500161] (10500161) 01 00 Card state: Card removed, I'm pretty sure that there must be a way to solve it without needing to restart pcscd every time. I'll be very grateful if you could give me a piece of advice. Thanks in advance, Francisco _______________________________________________ Muscle mailing list Muscle@lists.musclecard.com http://lists.drizzle.com/mailman/listinfo/muscle
-- Douglas E. Engert <deeng...@anl.gov> Argonne National Laboratory 9700 South Cass Avenue Argonne, Illinois 60439 (630) 252-5444 _______________________________________________ Muscle mailing list Muscle@lists.musclecard.com http://lists.drizzle.com/mailman/listinfo/muscle