@@ -138,7 +138,7 @@ tpm2_keydata_read(BIO *bin, TPM2_KEYDATA *keydata, TPM2_PKEY_FORMAT format)
138138 if (tpk == NULL )
139139 return 0 ;
140140
141- if (tpk -> privkey -> length == sizeof (keydata -> handle ) && tpk -> privkey -> data [0 ] == TPM2_HT_PERSISTENT )
141+ if (ASN1_STRING_length ( tpk -> privkey ) == sizeof (keydata -> handle ) && ASN1_STRING_get0_data ( tpk -> privkey ) [0 ] == TPM2_HT_PERSISTENT )
142142 keydata -> privatetype = KEY_TYPE_HANDLE ;
143143 else
144144 keydata -> privatetype = KEY_TYPE_BLOB ;
@@ -161,19 +161,19 @@ tpm2_keydata_read(BIO *bin, TPM2_KEYDATA *keydata, TPM2_PKEY_FORMAT format)
161161 goto error ;
162162
163163 if (keydata -> privatetype == KEY_TYPE_HANDLE ) {
164- if (Tss2_MU_TPM2_HANDLE_Unmarshal (tpk -> privkey -> data ,
165- tpk -> privkey -> length , NULL ,
164+ if (Tss2_MU_TPM2_HANDLE_Unmarshal (ASN1_STRING_get0_data ( tpk -> privkey ) ,
165+ ASN1_STRING_length ( tpk -> privkey ) , NULL ,
166166 & keydata -> handle ))
167167 goto error ;
168168 } else {
169- if (Tss2_MU_TPM2B_PRIVATE_Unmarshal (tpk -> privkey -> data ,
170- tpk -> privkey -> length , NULL ,
169+ if (Tss2_MU_TPM2B_PRIVATE_Unmarshal (ASN1_STRING_get0_data ( tpk -> privkey ) ,
170+ ASN1_STRING_length ( tpk -> privkey ) , NULL ,
171171 & keydata -> priv ))
172172 goto error ;
173173 }
174174
175- if (Tss2_MU_TPM2B_PUBLIC_Unmarshal (tpk -> pubkey -> data ,
176- tpk -> pubkey -> length , NULL ,
175+ if (Tss2_MU_TPM2B_PUBLIC_Unmarshal (ASN1_STRING_get0_data ( tpk -> pubkey ) ,
176+ ASN1_STRING_length ( tpk -> pubkey ) , NULL ,
177177 & keydata -> pub ))
178178 goto error ;
179179
0 commit comments