On 26/04/06, Juergen Ludyga <[EMAIL PROTECTED]> wrote:
> Hello,

Hi,

> >if C_Initialize is called the second card blocks if there is already an
> open session. C_Initialize looks at all readers, whether in use or not.
> >The calling chain is:
> >C_Initialize
> >-> __card_detect_all
> >-> card_detect
> >-> pkcs15_bind
> >-> sc_pkcs15_bind
> >-> sc_lock
> >-> pcsc_lock
> >-> SCardBeginTransaction
> >-> SYS_Usleep
> >-> _nanosleep_nocancel
>
> >is there a way to find out if a reader is already in use?
> >or is there an option so pcsc_lock could fail if the reader is locked,
> rather than wait?
>
> I made a workaround. The idea is to pre select a reader while loading the
> engine. The openssl engine works only with the pre selected
> reader. It's little bit dirty, but it is working. SELECT_READER command
> works with one or more readers.
> If you don't use it, all readers will be used (as usual).

I do not understand what your code is doing.
There is no interaction with PC/SC? I supposed the problem was between
OpenSC and PC/SC

> The changes are in engine_pkcs11 and libp11.

Some comments on your diff
- it contains two times the same patch for src/p11_load.c
- it contains a patch for src/p11_slot.c that is not related to the
problem you try to solve
- it contains the addition of some extra new line

Please keep your patch as simple as possible.

Can you resubmit it and explain what it does?

Thanks

--
  Dr. Ludovic Rousseau
_______________________________________________
opensc-devel mailing list
[email protected]
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to