Dear Ludovic,

thanks for taking care of this issue.

On Monday 25 July 2011, 14:30:35 Ludovic Rousseau wrote:
> 2011/7/25 Hans-Peter Jansen <[email protected]>:
> > Hi,
>
> Hello,
>
> > although being pretty new to smartcard businesses, I developed a
> > small app, that reads EU driver cards contents, using:
> >
> > Bus 001 Device 012: ID 046a:002d Cherry GmbH SmartTerminal XX44
> >
> > through:
> >
> > libpcsclite1-1.7.4-57.1
> > pcsc-ccid-1.4.4-22.7
> > pcsc-lite-1.7.4-57.1
> >
> > that were publically built here:
> >
> > https://build.opensuse.org/project/monitor?project=home%3Afrispete%
> >3Achipcard
>
> What is the output of:
> /usr/sbin/pcscd --version

I hoped, that the rpm version numbers from above would suffice.
Anyway:

pcsc-lite version 1.7.4.
Copyright (C) 1999-2002 by David Corcoran <[email protected]>.
Copyright (C) 2001-2011 by Ludovic Rousseau <[email protected]>.
Copyright (C) 2003-2004 by Damien Sauveron <[email protected]>.
Report bugs to <[email protected]>.
Enabled features: Linux i686-suse-linux-gnu serial usb libusb 
usbdropdir=/usr/lib/readers ipcdir=/var/run/pcscd configdir=/etc/reader.conf.d

> > During that course, I've noticed, that even without any further
> > actions besides starting pcscd with a connected card reader, the 3
> > pcscd threads eat my heap for breakfirst.
>
> The bug may already be fixed in the pcsc-lite subversion repository.
> http://pcsclite.alioth.debian.org/pcsclite.html

Okay, I built pcsc-lite rev5875 on build service (see link above), 
where e.g. the build log is available by just clicking in a certain 
build target link. For historical and other reasons, my production 
systems bases on openSUSE 11.1/i586 still.

PC/SC lite has been configured with following options:

Version:             1.7.5-svn5875
System binaries:     /usr/sbin
Configuration dir:   /etc/reader.conf.d


Host:                i686-suse-linux-gnu
Compiler:            gcc
Preprocessor flags:  -I${top_srcdir}/src 
Compiler flags:      -Wall -fno-common -march=i586 -mtune=i686 
-fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2
                     -fstack-protector -funwind-tables 
-fasynchronous-unwind-tables -g
Preprocessor flags:  -I${top_srcdir}/src 
Linker flags:        
Libraries:           

PTHREAD_CFLAGS:      -pthread
PTHREAD_LIBS:        
PCSC_ARCH:           Linux

pcscd binary          /usr/sbin/pcscd
libudev support:      no
libusb support:       yes
USB drop directory:   /usr/lib/readers
ATR parsing messages: false
ipcdir:               /var/run/pcscd
use serial:           yes
use usb:              yes

PCSCLITE_FEATURES:     Linux i686-suse-linux-gnu serial usb libusb 
usbdropdir=/usr/lib/readers ipcdir=/var/run/pcscd 
configdir=/etc/reader.conf.d

The udev support keeps disabled, even if the related devel were 
installed. I guess, they are simply too old, but should not lead 
to such a severe memory leak, does it?

Unfortunately, the problem persists:

$ /usr/sbin/pcscd -v
pcsc-lite version 1.7.5-svn5875.
Copyright (C) 1999-2002 by David Corcoran <[email protected]>.
Copyright (C) 2001-2011 by Ludovic Rousseau <[email protected]>.
Copyright (C) 2003-2004 by Damien Sauveron <[email protected]>.
Report bugs to <[email protected]>.
Enabled features: Linux i686-suse-linux-gnu serial usb libusb 
usbdropdir=/usr/lib/readers ipcdir=/var/run/pcscd configdir=/etc/reader.conf.d

[Note: as visible in the pcsc-lite.spec file (the rpm counterpart of 
debian/rules), I've patched configure.in to reflect the new expected 
version and added the svn revision. For packagers of svn snapshots, it 
might be advantageous to set the targeted version early in the 
development process, e.g:

AC_INIT(pcsc-lite, 1.7.5-svn)
]

Just started:

$ ps -FLC pcscd
UID        PID  PPID   LWP  C NLWP    SZ   RSS PSR STIME TTY          TIME CMD
root     23060     1 23060  0    3  4676   992   1 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23061  0    3  4676   992   1 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23063  0    3  4676   992   1 10:47 pts/24   00:00:00 
/usr/sbin/pcscd

Running my app:

$ ps -FLC pcscd
UID        PID  PPID   LWP  C NLWP    SZ   RSS PSR STIME TTY          TIME CMD
root     23060     1 23060  0    5  8917  1796   0 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23061  0    5  8917  1796   1 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23063  0    5  8917  1796   0 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23166  0    5  8917  1796   1 10:49 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23765  0    5  8917  1796   0 10:50 pts/24   00:00:00 
/usr/sbin/pcscd

After reading one card:

$ ps -FLC pcscd
UID        PID  PPID   LWP  C NLWP    SZ   RSS PSR STIME TTY          TIME CMD
root     23060     1 23060  0    3  8949  1844   0 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23061  0    3  8949  1844   1 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23063  0    3  8949  1844   0 10:47 pts/24   00:00:00 
/usr/sbin/pcscd

About ten minutes later:

$ LANG=C date; ps -FLC pcscd
Tue Jul 26 10:57:09 CEST 2011
UID        PID  PPID   LWP  C NLWP    SZ   RSS PSR STIME TTY          TIME CMD
root     23060     1 23060  0    3  9173  2756   0 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23061  0    3  9173  2756   1 10:47 pts/24   00:00:01 
/usr/sbin/pcscd
root     23060     1 23063  0    3  9173  2756   0 10:47 pts/24   00:00:00 
/usr/sbin/pcscd

11 minutes:

$ LANG=C date; ps -FLC pcscd
Tue Jul 26 10:57:54 CEST 2011
UID        PID  PPID   LWP  C NLWP    SZ   RSS PSR STIME TTY          TIME CMD
root     23060     1 23060  0    3  9205  2884   0 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23061  0    3  9205  2884   1 10:47 pts/24   00:00:01 
/usr/sbin/pcscd
root     23060     1 23063  0    3  9205  2884   0 10:47 pts/24   00:00:00 
/usr/sbin/pcscd

about 3,5 hours after start:

$ LANG=C date; ps -FLC pcscd
Tue Jul 26 13:09:50 CEST 2011
UID        PID  PPID   LWP  C NLWP    SZ   RSS PSR STIME TTY          TIME CMD
root     23060     1 23060  0    3 14801 25304   0 10:47 pts/24   00:00:00 
/usr/sbin/pcscd
root     23060     1 23061  0    3 14801 25304   0 10:47 pts/24   00:00:11 
/usr/sbin/pcscd
root     23060     1 23063  0    3 14801 25304   1 10:47 pts/24   00:00:00 
/usr/sbin/pcscd

Thanks,
Pete
_______________________________________________
Muscle mailing list
[email protected]
http://lists.drizzle.com/mailman/listinfo/muscle

Reply via email to