[dpdk-dev] [PATCH v3 4/6] test/crypto: add unit testcase for asym crypto

Akhil Goyal akhil.goyal at nxp.com
Mon Jun 18 09:34:37 CEST 2018


Hi Shally,
On 6/18/2018 12:18 PM, Verma, Shally wrote:
> Hi
>
>> -----Original Message-----
>> From: Akhil Goyal [mailto:akhil.goyal at nxp.com]
>> Sent: 18 June 2018 12:10
>> To: Verma, Shally <Shally.Verma at cavium.com>; De Lara Guarch, Pablo <pablo.de.lara.guarch at intel.com>
>> Cc: Trahe, Fiona <fiona.trahe at intel.com>; akhil.goyal at nxp.com; dev at dpdk.org; Athreya, Narayana Prasad
>> <NarayanaPrasad.Athreya at cavium.com>; Sahu, Sunila <Sunila.Sahu at cavium.com>; Gupta, Ashish <Ashish.Gupta at cavium.com>
>> Subject: Re: [dpdk-dev] [PATCH v3 4/6] test/crypto: add unit testcase for asym crypto
>>
>
> //snip
>
>>>>>>> +static int
>>>>>>> +test_rsa(struct rsa_test_data *t)
>>>>>>
>>>>>> ...
>>>>>>
>>>>>>> +     rsa->n =
>>>>>>> +             BN_bin2bn(
>>>>>>> +                     (const unsigned char *)rsa_xform.rsa.n.data,
>>>>>>> +                     rsa_xform.rsa.n.length,
>>>>>>> +                     rsa->n);
>>>>>>
>>>>>> I am getting a compilation error:
>>>>>>
>>>>>> /test/test/test_cryptodev_asym.c:322:5: error:
>>>>>> dereferencing pointer to incomplete type 'RSA {aka struct rsa_st}'
>>>>>>  rsa->n =
>>>>>>     ^~
>>>>>>
>>>>>> My OpenSSL version is 1.1.0h.
>>>>>>
>>>>> [Shally] This library is tested with version 1.0.2m (mentioned above) and also
>>>>> one supported by openssl PMD . So, you need to take similar version.
>>>>
>>>> I'd say we should support the latest stable version of OpenSSL.
>>>> Could you get the latest 1.1.0?
>>> [Shally] Openssl PMD uses 1.0.2h. If we move test to 1.1.0 then dpdk would need to be set
>>> to link to two different version of libcrypto whenever openssl PMD is enabled which seems like a cumbersome process for users.
>>> So I recommend for now to stick to one version.
>>>
>>
>> OpenSSL PMD can get compiled/linked with any of the versions 1.0.2 or
>> 1.1. We cannot control the above applications which version it is using.
>> So we should not add limitation for openssl version. Please check below
>> snippet in the PMD if this is suitable in your case.
>>
>> +#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
>> +static HMAC_CTX *HMAC_CTX_new(void)
>> +{
>> +       HMAC_CTX *ctx = OPENSSL_malloc(sizeof(*ctx));
>> +
>> +       if (ctx != NULL)
>> +               HMAC_CTX_init(ctx);
>> +       return ctx;
>> +}
>> +
>> +static void HMAC_CTX_free(HMAC_CTX *ctx)
>> +{
>> +       if (ctx != NULL) {
>> +               HMAC_CTX_cleanup(ctx);
>> +               OPENSSL_free(ctx);
>> +       }
>> +}
>> +#endif
>>
> [Shally] Are we just planning to make PMD/test compatible for all lib versions? Won't it then be too many version compatibility checks in PMD/test and a maintainability issue than having implementation mentioned to be compatible with specific version?
>

I think we should at least support the latest stable version. As per the 
openssl website "The latest stable version is the 1.1.0 series. The 
1.0.2 series is our Long Term Support (LTS) release, supported until 
31st December 2019". I think Pablo also suggested to support openssl 1.1.

Thanks,
Akhil
>>
>>> Thanks
>>> Shally
>>>
>>>>
>>>> Thanks,
>>>> Pablo
>



More information about the dev mailing list