New functions to allow RSA_METHODs to be changed without poking round in
RSA structure internals.
This commit is contained in:
parent
e371828067
commit
ce8b257413
4 changed files with 31 additions and 0 deletions
5
CHANGES
5
CHANGES
|
@ -4,6 +4,11 @@
|
|||
|
||||
Changes between 0.9.3a and 0.9.4
|
||||
|
||||
*) New functions RSA_get_default_method(), RSA_set_method() and
|
||||
RSA_get_method(). These allows replacement of RSA_METHODs without having
|
||||
to mess around with the internals of an RSA structure.
|
||||
[Steve Henson]
|
||||
|
||||
*) Fix memory leaks in DSA_do_sign and DSA_is_prime.
|
||||
Also really enable memory leak checks in openssl.c and in some
|
||||
test programs.
|
||||
|
|
|
@ -161,6 +161,9 @@ void RSA_free (RSA *r);
|
|||
int RSA_flags(RSA *r);
|
||||
|
||||
void RSA_set_default_method(RSA_METHOD *meth);
|
||||
RSA_METHOD *RSA_get_default_method(void);
|
||||
RSA_METHOD *RSA_get_method(RSA *rsa);
|
||||
RSA_METHOD *RSA_set_method(RSA *rsa, RSA_METHOD *meth);
|
||||
|
||||
/* This function needs the memory locking malloc callbacks to be installed */
|
||||
int RSA_memory_lock(RSA *r);
|
||||
|
|
|
@ -79,6 +79,26 @@ void RSA_set_default_method(RSA_METHOD *meth)
|
|||
default_RSA_meth=meth;
|
||||
}
|
||||
|
||||
RSA_METHOD *RSA_get_default_method(void)
|
||||
{
|
||||
return default_RSA_meth;
|
||||
}
|
||||
|
||||
RSA_METHOD *RSA_get_method(RSA *rsa)
|
||||
{
|
||||
return rsa->meth;
|
||||
}
|
||||
|
||||
RSA_METHOD *RSA_set_method(RSA *rsa, RSA_METHOD *meth)
|
||||
{
|
||||
RSA_METHOD *mtmp;
|
||||
mtmp = rsa->meth;
|
||||
if (mtmp->finish) mtmp->finish(rsa);
|
||||
rsa->meth = meth;
|
||||
if (meth->init) meth->init(rsa);
|
||||
return mtmp;
|
||||
}
|
||||
|
||||
RSA *RSA_new_method(RSA_METHOD *meth)
|
||||
{
|
||||
RSA *ret;
|
||||
|
|
|
@ -1818,3 +1818,6 @@ sk_ASN1_OBJECT_insert 1842
|
|||
sk_ASN1_OBJECT_push 1843
|
||||
d2i_ASN1_SET_OF_ASN1_OBJECT 1844
|
||||
PKCS7_signatureVerify 1845
|
||||
RSA_set_method 1846
|
||||
RSA_get_method 1847
|
||||
RSA_get_default_method 1848
|
||||
|
|
Loading…
Reference in a new issue