aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoberto Sassu <roberto.sassu@huawei.com>2018-06-26 16:56:32 +0200
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2018-06-28 11:33:46 -0700
commitfa8fcc229ca74b66a44e81c36c9356aaeae3e2fa (patch)
tree5e077d85530c057193d01810c61fdc2ac2ec6904
parentcb19d668964ac0dc36be23ab0a2e1ed0cf749f61 (diff)
downloadopenssl_tpm2_engine-fa8fcc229ca74b66a44e81c36c9356aaeae3e2fa.tar.gz
tpm2-common: rename tpm2_get_hmac_handle() to tpm2_get_session_handle()
Rename the function and add the additional parameter sessionType, so that it can return a handle of a hmac or a policy session. Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
-rw-r--r--create_tpm2_key.c6
-rw-r--r--e_tpm2-ecc.c4
-rw-r--r--e_tpm2-rsa.c4
-rw-r--r--e_tpm2.c3
-rw-r--r--tpm2-common.c6
-rw-r--r--tpm2-common.h4
6 files changed, 15 insertions, 12 deletions
diff --git a/create_tpm2_key.c b/create_tpm2_key.c
index fa258be..2d853ed 100644
--- a/create_tpm2_key.c
+++ b/create_tpm2_key.c
@@ -664,7 +664,8 @@ int main(int argc, char **argv)
}
/* use salted parameter encryption to hide the key */
- rc = tpm2_get_hmac_handle(tssContext, &authHandle, phandle);
+ rc = tpm2_get_session_handle(tssContext, &authHandle, phandle,
+ TPM_SE_HMAC);
if (rc)
goto out_flush;
@@ -715,7 +716,8 @@ int main(int argc, char **argv)
cin.creationPCR.count = 0;
/* use salted parameter encryption to hide the key */
- rc = tpm2_get_hmac_handle(tssContext, &authHandle, phandle);
+ rc = tpm2_get_session_handle(tssContext, &authHandle, phandle,
+ TPM_SE_HMAC);
if (rc)
goto out_flush;
diff --git a/e_tpm2-ecc.c b/e_tpm2-ecc.c
index 47c4b88..d6a87b6 100644
--- a/e_tpm2-ecc.c
+++ b/e_tpm2-ecc.c
@@ -163,7 +163,7 @@ static ECDSA_SIG *tpm2_ecdsa_sign(const unsigned char *dgst, int dgst_len,
in.validation.digest.t.size = 0;
sig = NULL;
- rc = tpm2_get_hmac_handle(tssContext, &authHandle, 0);
+ rc = tpm2_get_session_handle(tssContext, &authHandle, 0, TPM_SE_HMAC);
if (rc)
goto out;
@@ -240,7 +240,7 @@ static int tpm2_ecc_compute_key(unsigned char **psec, size_t *pseclen,
in.inPoint.point.y.t.size = len;
ret = 0;
- rc = tpm2_get_hmac_handle(tssContext, &authHandle, 0);
+ rc = tpm2_get_session_handle(tssContext, &authHandle, 0, TPM_SE_HMAC);
if (rc)
goto out;
diff --git a/e_tpm2-rsa.c b/e_tpm2-rsa.c
index 0ebb826..c89dd5d 100644
--- a/e_tpm2-rsa.c
+++ b/e_tpm2-rsa.c
@@ -174,7 +174,7 @@ static int tpm2_rsa_priv_dec(int flen,
memcpy(in.cipherText.t.buffer, from, flen);
in.label.t.size = 0;
- rc = tpm2_get_hmac_handle(tssContext, &authHandle, 0);
+ rc = tpm2_get_session_handle(tssContext, &authHandle, 0, TPM_SE_HMAC);
if (rc)
goto out;
@@ -229,7 +229,7 @@ static int tpm2_rsa_priv_enc(int flen,
}
rv = -1;
- rc = tpm2_get_hmac_handle(tssContext, &authHandle, 0);
+ rc = tpm2_get_session_handle(tssContext, &authHandle, 0, TPM_SE_HMAC);
if (rc)
goto out;
diff --git a/e_tpm2.c b/e_tpm2.c
index 94be593..57dc290 100644
--- a/e_tpm2.c
+++ b/e_tpm2.c
@@ -499,7 +499,8 @@ TPM_HANDLE tpm2_load_key(TSS_CONTEXT **tsscp, struct app_data *app_data)
if (rc)
goto out;
}
- rc = tpm2_get_hmac_handle(tssContext, &session, in.parentHandle);
+ rc = tpm2_get_session_handle(tssContext, &session, in.parentHandle,
+ TPM_SE_HMAC);
if (rc)
goto out_flush_srk;
rc = TSS_Execute(tssContext,
diff --git a/tpm2-common.c b/tpm2-common.c
index e71777b..5381369 100644
--- a/tpm2-common.c
+++ b/tpm2-common.c
@@ -563,8 +563,8 @@ TPM_RC tpm2_get_bound_handle(TSS_CONTEXT *tssContext, TPM_HANDLE *handle,
return TPM_RC_SUCCESS;
}
-TPM_RC tpm2_get_hmac_handle(TSS_CONTEXT *tssContext, TPM_HANDLE *handle,
- TPM_HANDLE salt_key)
+TPM_RC tpm2_get_session_handle(TSS_CONTEXT *tssContext, TPM_HANDLE *handle,
+ TPM_HANDLE salt_key, TPM_SE sessionType)
{
TPM_RC rc;
StartAuthSession_In in;
@@ -574,7 +574,7 @@ TPM_RC tpm2_get_hmac_handle(TSS_CONTEXT *tssContext, TPM_HANDLE *handle,
memset(&in, 0, sizeof(in));
memset(&extra, 0 , sizeof(extra));
in.bind = TPM_RH_NULL;
- in.sessionType = TPM_SE_HMAC;
+ in.sessionType = sessionType;
in.authHash = TPM_ALG_SHA256;
in.tpmKey = TPM_RH_NULL;
in.symmetric.algorithm = TPM_ALG_AES;
diff --git a/tpm2-common.h b/tpm2-common.h
index 9be0c94..a33e238 100644
--- a/tpm2-common.h
+++ b/tpm2-common.h
@@ -9,8 +9,8 @@ TPM_RC tpm2_load_srk(TSS_CONTEXT *tssContext, TPM_HANDLE *h, const char *auth, T
void tpm2_flush_handle(TSS_CONTEXT *tssContext, TPM_HANDLE h);
EVP_PKEY *tpm2_to_openssl_public(TPMT_PUBLIC *pub);
void tpm2_flush_srk(TSS_CONTEXT *tssContext, TPM_HANDLE hSRK);
-TPM_RC tpm2_get_hmac_handle(TSS_CONTEXT *tssContext, TPM_HANDLE *handle,
- TPM_HANDLE salt_key);
+TPM_RC tpm2_get_session_handle(TSS_CONTEXT *tssContext, TPM_HANDLE *handle,
+ TPM_HANDLE salt_key, TPM_SE sessionType);
TPM_RC tpm2_get_bound_handle(TSS_CONTEXT *tssContext, TPM_HANDLE *handle,
TPM_HANDLE bind, const char *auth);
TPM_RC tpm2_SensitiveToDuplicate(TPMT_SENSITIVE *s,