[pkg-opensc-commit] [libp11] 74/86: Added a basic RSA finish method

Eric Dorland eric at moszumanska.debian.org
Sun Jul 24 21:40:25 UTC 2016


This is an automated email from the git hooks/post-receive script.

eric pushed a commit to branch master
in repository libp11.

commit dc3a2d2242583535d97d19335e94b08d0731adb6
Author: Michał Trojnara <Michal.Trojnara at stunnel.org>
Date:   Fri Mar 18 18:36:21 2016 +0100

    Added a basic RSA finish method
---
 src/p11_ec.c  | 2 +-
 src/p11_rsa.c | 9 ++++++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/p11_ec.c b/src/p11_ec.c
index b091900..f0b5f9f 100644
--- a/src/p11_ec.c
+++ b/src/p11_ec.c
@@ -174,7 +174,7 @@ static EVP_PKEY *pkcs11_get_evp_key_ec(PKCS11_KEY *key)
 #else
 	ECDSA_set_ex_data(ec, ec_ex_index, key);
 #endif
-	EC_KEY_free(ec); /* drops our reference to it */
+	EC_KEY_free(ec); /* Drops our reference to it */
 	return pk;
 }
 
diff --git a/src/p11_rsa.c b/src/p11_rsa.c
index 93bd411..c4e44d7 100644
--- a/src/p11_rsa.c
+++ b/src/p11_rsa.c
@@ -67,7 +67,7 @@ static int pkcs11_mechanism(CK_MECHANISM *mechanism, const int padding)
 		mechanism->mechanism = CKM_RSA_X9_31;
 		break;
 	default:
-		printf("pkcs11 engine: unsupported padding type\n");
+		fprintf(stderr, "PKCS#11: Unsupported padding type\n");
 		return -1;
 	}
 	return 0;
@@ -308,6 +308,12 @@ static int pkcs11_rsa_priv_enc_method(int flen, const unsigned char *from,
 	return PKCS11_private_encrypt(flen, from, to, key, padding);
 }
 
+static int pkcs11_rsa_free_method(RSA *rsa)
+{
+	RSA_set_ex_data(rsa, rsa_ex_index, NULL);
+	return 1;
+}
+
 static void alloc_rsa_ex_index()
 {
 	if (rsa_ex_index == 0) {
@@ -345,6 +351,7 @@ RSA_METHOD *PKCS11_get_rsa_method(void)
 		memcpy(ops, RSA_get_default_method(), sizeof(RSA_METHOD));
 		ops->rsa_priv_enc = pkcs11_rsa_priv_enc_method;
 		ops->rsa_priv_dec = pkcs11_rsa_priv_dec_method;
+		ops->finish = pkcs11_rsa_free_method;
 	}
 	return ops;
 }

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-opensc/libp11.git



More information about the pkg-opensc-commit mailing list