Moin, I'm currently in the process of trying to write an ifd handler to be able to use librfid in openct (and therefore in opensc and pc/sc) to be run with the librfid that uses a patched openct ccid ifd handler that offers the ESCAPE protocol. (E.g. I'm talking about a cardman 5121 here.)
Some questions/remarks: As there currently is no T=CL support (and I'm not yet sure what that would encompass) I'm using IFD_PROTOCOL_TRANSPARENT (though I'm not sure I grok the way a reader is supposed to announce what protocols it supports yet). What do I need a struct ifd_device/ifd_device_t in that context for? It's not as if I was using a serial or USB device, so I basically just allocate an empty one in my open function and assign it to reader->device. If I don't then ifdhandler crashes in ifd_device_set_hotplug() at device.c:109 called from main() at ifdhandler.c:160. Also the build process is currently somewhat complicated because a librfid ifd handler needs to have librfid, but librfid needs openct a part of which is the librfid ifd handler. Some way to decouple these dependencies? (E.g. dynamically loadable ifd handlers like for pcsc-lite). The current way of having an openct ifd handler calling a library that calls another openct ifd handler seems to be ugly. For the future it would be nice to have the contact-less support in the same ifd as the contact-based part, e.g. as an additional slot (or even several slots, because I've been told that 4 cards should be possible). This would also nicely solve hotplug. Of course the most easy way would be to subclass the ccid handler, if there was something like subclassing in C. -- Henryk Plötz Grüße aus Berlin ~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~ ~ Help Microsoft fight software piracy: Give Linux to a friend today! ~
pgpMGo4GR9f0r.pgp
Description: PGP signature
_______________________________________________ opensc-devel mailing list opensc-devel@lists.opensc-project.org http://www.opensc-project.org/mailman/listinfo/opensc-devel