From: Frank M. <mo...@in...> - 2016-06-26 21:30:31
|
Hi! > I downloaded > https://sourceforge.net/projects/opensc/files/OpenSC/opensc-0.15.0/opensc-0.15.0.tar.gz/download > twice, last year and recently this year, and surprisingly the tarballs > contents are quite different, as well as the file dates: 2015-05-16 and > 2016-02-16. > (I can't compare .zip archives; current still has 2015-05-16 file date, thus > probably stable, but Windows isn't my first priority) Hmm, interesting. Just out of curiosity, could you run `diff` on the extracted directories? You could even compare that with the git commit tagged with 0.15.0... > A binding (for a new driver written as external module in D; as well as the > module acos5_64 itself) renders quite useless for the public if the version > is a moving target. > Problems arise from API differences (called same version 0.15.0) in: > opensc.h (struct sc_reader_driver, struct sc_reader, struct sc_context), > pkcs15.h (struct sc_md_cmap_record, struct sc_md_cardcf, struct sc_md_data, > struct sc_pkcs15_prkey_info), > sc-pkcs11.h (struct sc_pkcs11_config, struct sc_pkcs11_slot). > > Thus I can base on version 0.16.0 only/earliest, which most people's Linux > distributions won't supply for some time (my recent Kubuntu upgrade 16.04 > comes with 0.15.0 whichever)? There are some false assumptions in your thoughts: 1. OpenSC does not install any header files anymore, because we don't want to encourage people to use it! If you use it, nevertheless, you need to cope with the consequences. 2. In the past, the driver loading API has been used to avoid the GPL/LGPL licensing. However, the internal API is not general enough to achieve this and still requires external driver code to be compatible with inclusion in LGPL. I wonder what license your D-driver code has... 3. If you want to support some card with OpenSC we encourage you to contribute the code to the project itself. Here, it will survive all API changes and will get some independent review (hopefully). Regards, Frank. |