[SmartcardServices-Dev] ScardEndTransaction ends all the transactions on the card
Ludovic Rousseau
ludovic.rousseau at gmail.com
Thu Aug 17 07:49:26 PDT 2017
2017-08-07 10:59 GMT+02:00 Логачев Антон <ALogachev at rutoken.ru>:
> Hello!
>
Hello,
>
> There is a bug in OsX implementation of PCSC standard that makes smartcard
> synchronization not available via the PSCS functions.
>
> If we start 2 transcations (SCardBeginTransaction) on a specific card only
> one call to SCardEndTransaction makes the card available to all the
> processes, though it is supposed to be available only after the second
> matching call to SCardEndTransaction (that’s the way it behaves on linux
> and windows).
>
>
>
> In the attachment you can find a simple code that demonstrates this
> behavior. You can use this command line to build it: “g++ -framework PCSC
> -std=c++11 scardTest.cpp”.
>
> Launch it in two terminals simultaneously. On OsX both processes will
> reach the “Start me again” output, but on Linux and Windows the second
> process will wait on ScardConnect function until all the transactions are
> closed.
>
Thanks for reporting the bug.
I reported it at https://bugreport.apple.com/
I also wrote a blog article at
https://ludovicrousseau.blogspot.com/2017/08/macos-sierra-bug-pcsc-transactions-cant.html
I do not work for Apple so I can't tell if/when this bug will be fixed.
Regards,
--
Dr. Ludovic Rousseau
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/smartcardservices-dev/attachments/20170817/4a52f55a/attachment.html>
More information about the SmartcardServices-Dev
mailing list