879650b866
dsa_mod_exp() and bn_mod_exp() handlers from dsa_do_verify() and dsa_sign_setup(). When another DSA_METHOD implementation does not define these lower-level handlers, it becomes impossible to do a fallback to software on errors using a simple DSA_OpenSSL()->fn(key). This change allows the default DSA_METHOD to function in such circumstances by only using dsa_mod_exp() and bn_mod_exp() handlers if they exist, otherwise using BIGNUM implementations directly (which is what those handlers did before this change). There should be no noticable difference for the software case, or indeed any custom case that didn't already segfault, except perhaps that there is now one less level of indirection in all cases. PR: 507 |
||
---|---|---|
.. | ||
.cvsignore | ||
dsa_asn1.c | ||
dsa_depr.c | ||
dsa_err.c | ||
dsa_gen.c | ||
dsa_key.c | ||
dsa_lib.c | ||
dsa_ossl.c | ||
dsa_sign.c | ||
dsa_vrf.c | ||
dsa.h | ||
dsagen.c | ||
dsatest.c | ||
fips186a.txt | ||
Makefile.ssl | ||
README |
The stuff in here is based on patches supplied to me by Steven Schoch <schoch@sheba.arc.nasa.gov> to do DSS. I have since modified a them a little but a debt of gratitude is due for doing the initial work.