Hello,

On 9/21/11 6:52 , Douglas E. Engert wrote:
> Back to the master plan.
Yes. I was off for 5 days in Brussels for BruCON (which was great!), so
back to things and plans.

>  Would it help to for a developer to rebase their changes  as you add
> other changes?
Yes.

> Viktor said on 8/11/2011:
>> I guess that we should have some intermediate branch with a more or
>> less common commit access,
>> that can be fed by more then one person and that could be used as a
>> fresh code base for the patch/merge proposals.
>> This branch could be considered as 'almost sure' and normally could be
>> merged into the individual experimental branches without apprehension.
>> This branch should be the only one to be checked for the conflicts by
>> proposals authors.
>>
>> I was thinking about something like 'proposal' branch of the OpenSC
>> github.
>
> A developer could rebase their changes against this 'proposal' branch
> so making it easier to pull in the developers changes.
Yes.


> I am willing to do a rebase for the ECDH code.
Great!

> There is one area that still needs to be addressed. The ecdh/derive
> depends on much of the code that was introduced by the USE_PKCS15_INIT.
>
> But USE_PKCS15_INIT is only defined if ENABLE_OPENSSL is defined,
> and USE_PKCS_15_INIT ifdef's out much of the code that is needed by
> derive even though the derive code does not use OpenSSL.
>
> So I/we need a mode to change the #ifdefs for USE_PKCS15_INIT.
> This could be done against the 'proposed' branch, and then
> the ecdh code could be rebased on top of that.
>
> What do you suggest?
This should be addressed.

I've separated OpenSSL usage in src/libopensc to a "softcrypto"
minimodule and am half way through with making sure that the interface
would be sufficient by re-implementing used functionality with
alternative libgcrypt backend as well. In src/pkcs11 the use of OpenSSL
is even more interwoven, so fixing this is more complicated. As soon as
I am be done with the code in src/libopensc I'll push it out for review
and additional help to get this into src/pkcs11 as well.

Decoupling ENABLE_OPENSSL and USE_PKCS15_INIT beforehand would
nevertheless make it even more straightforward.

IMHO the following assumptions should be applied:
 - USE_PKCS15_INIT should disappear altogether
 - building with a "softcrypto" library (OpenSSL or libgcrypt or
CrytpoAPI or maybe even something entirely different) shall be assumed
 - building *without* a software crypto back-end should also be
possible, but this should not be accomplished by huge code blocks being
made inaccessible. In fact, there should be no #ifdef-s checking for
OpenSSL or similar in common code, only in
src/libopensc/softcrypto(-*.c|.h). sc_softcrypto_features() kind of
machinery can be used to test for the presence of certain algorithms or
ciphers if needed for advertising features.
 - building without a software crypto back-end shall possibly result in
undefined behavior and probably several SC_ERROR_NOT_SUPPORTED errors,
if hit. Just need to make sure that they get reported appropriately.

Best,ƒ´ƒ
Mar     tin     
-- 
@MartinPaljak
+3725156495
_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to