other smartcard extension (e.g. pivtoken) affect card status

When inserting a smartcard into a reader, all registered smartcard extensions will be started (simultaneously) in search for the right extension with the given AID.

When the smartcard extension with the right AID has been found, other extensions will be killed.


Unfortunately this affect the card status of the extension with the right AID and lots of communications with the card failed.


Question:

Is it not sensible to run the smartcard extensions one after another to prevent card status modification during the selection of smartcard extension with the righ AID?


Is there another solution for this? We don't want to disable other smartcard extensions, e.g. pivtoken.


This issue happens on macosx 10.12.0 onwards.


"ps aux| grep token" gives:


... 16100 ?? Ss 8:49AM 0:01.63 /Applications/token.app/Contents/PlugIns/bfesce.appex/Contents/MacOS/bfesce

... 9904 ?? Ss 10:26AM 0:00.03 /System/Library/Frameworks/CryptoTokenKit.framework/PlugIns/pivtoken.appex/Contents/MacOS/pivtoken

Replies

I'm writing a Token Extension for italian eID card.

How do you solve such a problem?

Did you disabled all other smart card extensions like pivtoken?