[pkg-opensc-commit] [opensc] 279/295: pkcs15init: prepare sc_pkcs15init_skeyargs for proper secret key support

Eric Dorland eric at moszumanska.debian.org
Sat Jun 24 21:11:40 UTC 2017


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

eric pushed a commit to branch master
in repository opensc.

commit e2e1cbd10fe8f4889cd541a409460bbe1dd6035c
Author: Timo Teräs <timo.teras at iki.fi>
Date:   Fri Apr 14 10:33:41 2017 +0300

    pkcs15init: prepare sc_pkcs15init_skeyargs for proper secret key support
---
 src/pkcs11/framework-pkcs15.c | 14 +++++++-------
 src/pkcs15init/pkcs15-init.h  |  3 ++-
 2 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/src/pkcs11/framework-pkcs15.c b/src/pkcs11/framework-pkcs15.c
index e6f648d..8a4f09b 100644
--- a/src/pkcs11/framework-pkcs15.c
+++ b/src/pkcs11/framework-pkcs15.c
@@ -2204,11 +2204,11 @@ pkcs15_create_secret_key(struct sc_pkcs11_slot *slot, struct sc_profile *profile
 			break;
 		case CKA_VALUE:
 			if (attr->pValue) {
-			    args.data_value.value = calloc(1,attr->ulValueLen);
-			    if (!args.data_value.value)
-					return CKR_HOST_MEMORY;
-			    memcpy(args.data_value.value, attr->pValue, attr->ulValueLen);
-			    args.data_value.len = attr->ulValueLen;
+			    args.key.data = calloc(1,attr->ulValueLen);
+			    if (!args.key.data)
+				return CKR_HOST_MEMORY;
+			    memcpy(args.key.data, attr->pValue, attr->ulValueLen);
+			    args.key.data_len = attr->ulValueLen;
 			}
 			break;
 		case CKA_DECRYPT:
@@ -2260,8 +2260,8 @@ pkcs15_create_secret_key(struct sc_pkcs11_slot *slot, struct sc_profile *profile
 	    skey_info->native = 0; /* card can not use this */
 	    skey_info->access_flags = 0; /* looks like not needed */
 	    skey_info->key_type = key_type; /* PKCS#11 CKK_* */
-	    skey_info->data.value = args.data_value.value;
-	    skey_info->data.len = args.data_value.len;
+	    skey_info->data.value = args.key.data;
+	    skey_info->data.len = args.key.data_len;
 	    skey_info->value_len = args.value_len; /* callers prefered length */
 
 	}
diff --git a/src/pkcs15init/pkcs15-init.h b/src/pkcs15init/pkcs15-init.h
index 03e4d9a..950c743 100644
--- a/src/pkcs15init/pkcs15-init.h
+++ b/src/pkcs15init/pkcs15-init.h
@@ -271,9 +271,10 @@ struct sc_pkcs15init_skeyargs {
 	unsigned long           usage;
 	unsigned int		flags;
 	unsigned int		access_flags;
+	unsigned long		algorithm; /* User requested algorithm */
 	unsigned long		value_len; /* User requested length */
 
-	struct sc_pkcs15_der	data_value; /* Wrong name: is not DER encoded */
+	struct sc_pkcs15_skey	key;
 };
 
 struct sc_pkcs15init_certargs {

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



More information about the pkg-opensc-commit mailing list