On 31.05.2017 14:33, Savolainen, Petri (Nokia - FI/Espoo) wrote:
> 
> 
>> -----Original Message-----
>> From: lng-odp [mailto:lng-odp-boun...@lists.linaro.org] On Behalf Of
>> Github ODP bot
>> Sent: Tuesday, May 23, 2017 1:00 AM
>> To: lng-odp@lists.linaro.org
>> Subject: [lng-odp] [PATCH API-NEXT v2 2/20] test: crypto: explicitly pass
>> AAD to crypto subsystem
>>
>> From: Dmitry Eremin-Solenikov <dmitry.ereminsoleni...@linaro.org>
>>
>> Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsoleni...@linaro.org>
>> ---
>> /** Email created from pull request 34 (lumag:crypto-update-main-new)
>>  ** https://github.com/Linaro/odp/pull/34
>>  ** Patch: https://github.com/Linaro/odp/pull/34.patch
>>  ** Base sha: 826ee894aa0ebd09d42a17e1de077c46bc5b366a
>>  ** Merge commit sha: 7c49c61063e2d57f049a5436cf12a3c36710bb34
>>  **/
>>  .../validation/api/crypto/odp_crypto_test_inp.c    | 37
>> ++++++++++++++++++++++
>>  1 file changed, 37 insertions(+)
>>
>> diff --git a/test/common_plat/validation/api/crypto/odp_crypto_test_inp.c
>> b/test/common_plat/validation/api/crypto/odp_crypto_test_inp.c
>> index 3d09e374..3f57a907 100644
>> --- a/test/common_plat/validation/api/crypto/odp_crypto_test_inp.c
>> +++ b/test/common_plat/validation/api/crypto/odp_crypto_test_inp.c
>> @@ -74,6 +74,8 @@ static void alg_test(odp_crypto_op_t op,
>>                   odp_crypto_key_t auth_key,
>>                   odp_packet_data_range_t *cipher_range,
>>                   odp_packet_data_range_t *auth_range,
>> +                 uint8_t *aad,
>> +                 uint32_t aad_len,
>>                   const uint8_t *plaintext,
>>                   unsigned int plaintext_len,
>>                   const uint8_t *ciphertext,
>> @@ -240,6 +242,9 @@ static void alg_test(odp_crypto_op_t op,
>>      if (op_iv_ptr)
>>              op_params.override_iv_ptr = op_iv_ptr;
>>
>> +    op_params.aad.ptr = aad;
>> +    op_params.aad.length = aad_len;
>> +
>>      op_params.hash_result_offset = plaintext_len;
>>      if (0 != digest_len) {
>>              memcpy(data_addr + op_params.hash_result_offset,
>> @@ -472,6 +477,7 @@ void crypto_test_enc_alg_3des_cbc(void)
>>                       ODP_AUTH_ALG_NULL,
>>                       auth_key,
>>                       NULL, NULL,
>> +                     NULL, 0,
>>                       tdes_cbc_reference_plaintext[i],
>>                       tdes_cbc_reference_length[i],
>>                       tdes_cbc_reference_ciphertext[i],
>> @@ -508,6 +514,7 @@ void crypto_test_enc_alg_3des_cbc_ovr_iv(void)
>>                       ODP_AUTH_ALG_NULL,
>>                       auth_key,
>>                       NULL, NULL,
>> +                     NULL, 0,
>>                       tdes_cbc_reference_plaintext[i],
>>                       tdes_cbc_reference_length[i],
>>                       tdes_cbc_reference_ciphertext[i],
>> @@ -548,6 +555,7 @@ void crypto_test_dec_alg_3des_cbc(void)
>>                       ODP_AUTH_ALG_NULL,
>>                       auth_key,
>>                       NULL, NULL,
>> +                     NULL, 0,
>>                       tdes_cbc_reference_ciphertext[i],
>>                       tdes_cbc_reference_length[i],
>>                       tdes_cbc_reference_plaintext[i],
>> @@ -586,6 +594,7 @@ void crypto_test_dec_alg_3des_cbc_ovr_iv(void)
>>                       ODP_AUTH_ALG_NULL,
>>                       auth_key,
>>                       NULL, NULL,
>> +                     NULL, 0,
>>                       tdes_cbc_reference_ciphertext[i],
>>                       tdes_cbc_reference_length[i],
>>                       tdes_cbc_reference_plaintext[i],
>> @@ -636,6 +645,9 @@ void crypto_test_enc_alg_aes128_gcm(void)
>>                       &aes128_gcm_cipher_range[i],
>>                       &aes128_gcm_auth_range[i],
> 
> Shouldn't you insert the new parameters in her? Between auth_range and 
> plaintext.
> 
>>                       aes128_gcm_reference_plaintext[i],
>> +                     aes128_gcm_cipher_range[i].offset -
>> +                     aes128_gcm_auth_range[i].offset,
> 
> Shouldn't this first added param be aad pointer ?

In fact I have reused original test vectors, which come in form of
packet ::= AAD DATA

with auth_range pointing to AAD start and cipher_range pointing to data.
If you think this is counterintuitive, I can split AAD away.

Probably I should do that, as the question arose.

> 
>> +                     aes128_gcm_reference_plaintext[i],
> 
> Shouldn't this second added param be aad length ?
> 
> 
> The same issues are copy-pasted to all aes128 gcm cases.

-- 
With best wishes
Dmitry

Reply via email to