mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-31 22:24:28 +00:00
feat(gdma): set burst size and return alignment constraint
burst size can affect the buffer alignment
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2015-2024 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -37,7 +37,6 @@ TEST_CASE("Test crypto lib bignum apis", "[wpa_crypto]")
|
||||
bn = crypto_bignum_init_set(buf, 32);
|
||||
TEST_ASSERT_NOT_NULL(bn);
|
||||
|
||||
|
||||
TEST_ASSERT(crypto_bignum_to_bin(bn, buf2, 32, 0) == 32);
|
||||
|
||||
TEST_ASSERT(!memcmp(buf, buf2, 32));
|
||||
@@ -245,7 +244,6 @@ TEST_CASE("Test crypto lib bignum apis", "[wpa_crypto]")
|
||||
uint8_t buf1[32], buf2[32];
|
||||
crypto_bignum *bn1, *bn2;
|
||||
|
||||
|
||||
buf1[0] = 0xf;
|
||||
buf2[0] = 0x11;
|
||||
|
||||
@@ -277,7 +275,6 @@ TEST_CASE("Test crypto lib bignum apis", "[wpa_crypto]")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Conversion macros for embedded constants:
|
||||
* build lists of mbedtls_mpi_uint's from lists of unsigned char's grouped by 8, 4 or 2
|
||||
@@ -322,30 +319,29 @@ TEST_CASE("Test crypto lib bignum apis", "[wpa_crypto]")
|
||||
* (assumes len is an exact multiple of sizeof mbedtls_mpi_uint)
|
||||
* Allocate a new memory as well so that it can be freed.
|
||||
*/
|
||||
static inline void ecp_mpi_load( mbedtls_mpi *X, const mbedtls_mpi_uint *p, size_t len )
|
||||
static inline void ecp_mpi_load(mbedtls_mpi *X, const mbedtls_mpi_uint *p, size_t len)
|
||||
{
|
||||
X->MBEDTLS_PRIVATE(s) = 1;
|
||||
X->MBEDTLS_PRIVATE(n) = len / sizeof( mbedtls_mpi_uint );
|
||||
X->MBEDTLS_PRIVATE(n) = len / sizeof(mbedtls_mpi_uint);
|
||||
X->MBEDTLS_PRIVATE(p) = os_zalloc(len);
|
||||
memcpy(X->MBEDTLS_PRIVATE(p), (void *)p, len);
|
||||
}
|
||||
|
||||
|
||||
TEST_CASE("Test crypto lib ECC apis", "[wpa_crypto]")
|
||||
{
|
||||
set_leak_threshold(600);
|
||||
set_leak_threshold(620);
|
||||
|
||||
static const mbedtls_mpi_uint secp256r1_gx[] = {
|
||||
BYTES_TO_T_UINT_8( 0x96, 0xC2, 0x98, 0xD8, 0x45, 0x39, 0xA1, 0xF4 ),
|
||||
BYTES_TO_T_UINT_8( 0xA0, 0x33, 0xEB, 0x2D, 0x81, 0x7D, 0x03, 0x77 ),
|
||||
BYTES_TO_T_UINT_8( 0xF2, 0x40, 0xA4, 0x63, 0xE5, 0xE6, 0xBC, 0xF8 ),
|
||||
BYTES_TO_T_UINT_8( 0x47, 0x42, 0x2C, 0xE1, 0xF2, 0xD1, 0x17, 0x6B ),
|
||||
BYTES_TO_T_UINT_8(0x96, 0xC2, 0x98, 0xD8, 0x45, 0x39, 0xA1, 0xF4),
|
||||
BYTES_TO_T_UINT_8(0xA0, 0x33, 0xEB, 0x2D, 0x81, 0x7D, 0x03, 0x77),
|
||||
BYTES_TO_T_UINT_8(0xF2, 0x40, 0xA4, 0x63, 0xE5, 0xE6, 0xBC, 0xF8),
|
||||
BYTES_TO_T_UINT_8(0x47, 0x42, 0x2C, 0xE1, 0xF2, 0xD1, 0x17, 0x6B),
|
||||
};
|
||||
static const mbedtls_mpi_uint secp256r1_gy[] = {
|
||||
BYTES_TO_T_UINT_8( 0xF5, 0x51, 0xBF, 0x37, 0x68, 0x40, 0xB6, 0xCB ),
|
||||
BYTES_TO_T_UINT_8( 0xCE, 0x5E, 0x31, 0x6B, 0x57, 0x33, 0xCE, 0x2B ),
|
||||
BYTES_TO_T_UINT_8( 0x16, 0x9E, 0x0F, 0x7C, 0x4A, 0xEB, 0xE7, 0x8E ),
|
||||
BYTES_TO_T_UINT_8( 0x9B, 0x7F, 0x1A, 0xFE, 0xE2, 0x42, 0xE3, 0x4F ),
|
||||
BYTES_TO_T_UINT_8(0xF5, 0x51, 0xBF, 0x37, 0x68, 0x40, 0xB6, 0xCB),
|
||||
BYTES_TO_T_UINT_8(0xCE, 0x5E, 0x31, 0x6B, 0x57, 0x33, 0xCE, 0x2B),
|
||||
BYTES_TO_T_UINT_8(0x16, 0x9E, 0x0F, 0x7C, 0x4A, 0xEB, 0xE7, 0x8E),
|
||||
BYTES_TO_T_UINT_8(0x9B, 0x7F, 0x1A, 0xFE, 0xE2, 0x42, 0xE3, 0x4F),
|
||||
};
|
||||
|
||||
{
|
||||
@@ -393,8 +389,8 @@ TEST_CASE("Test crypto lib ECC apis", "[wpa_crypto]")
|
||||
TEST_ASSERT_NOT_NULL(q);
|
||||
TEST_ASSERT_NOT_NULL(r);
|
||||
|
||||
mbedtls_mpi_init( &num );
|
||||
mbedtls_mpi_lset( &num, 3 );
|
||||
mbedtls_mpi_init(&num);
|
||||
mbedtls_mpi_lset(&num, 3);
|
||||
|
||||
ecp_mpi_load(& ((mbedtls_ecp_point *)p)->MBEDTLS_PRIVATE(X), secp256r1_gx, sizeof(secp256r1_gx));
|
||||
ecp_mpi_load(& ((mbedtls_ecp_point *)p)->MBEDTLS_PRIVATE(Y), secp256r1_gy, sizeof(secp256r1_gy));
|
||||
@@ -408,7 +404,7 @@ TEST_CASE("Test crypto lib ECC apis", "[wpa_crypto]")
|
||||
|
||||
TEST_ASSERT(crypto_ec_point_cmp(e, q, r) == 0);
|
||||
|
||||
mbedtls_mpi_free( &num );
|
||||
mbedtls_mpi_free(&num);
|
||||
crypto_ec_point_deinit(p, 1);
|
||||
crypto_ec_point_deinit(q, 1);
|
||||
crypto_ec_point_deinit(r, 1);
|
||||
@@ -432,8 +428,8 @@ TEST_CASE("Test crypto lib ECC apis", "[wpa_crypto]")
|
||||
TEST_ASSERT_NOT_NULL(q);
|
||||
TEST_ASSERT_NOT_NULL(r);
|
||||
|
||||
mbedtls_mpi_init( &num );
|
||||
mbedtls_mpi_lset( &num, 100 );
|
||||
mbedtls_mpi_init(&num);
|
||||
mbedtls_mpi_lset(&num, 100);
|
||||
|
||||
ecp_mpi_load(& ((mbedtls_ecp_point *)p)->MBEDTLS_PRIVATE(X), secp256r1_gx, sizeof(secp256r1_gx));
|
||||
ecp_mpi_load(& ((mbedtls_ecp_point *)p)->MBEDTLS_PRIVATE(Y), secp256r1_gy, sizeof(secp256r1_gy));
|
||||
@@ -448,7 +444,7 @@ TEST_CASE("Test crypto lib ECC apis", "[wpa_crypto]")
|
||||
|
||||
TEST_ASSERT(crypto_ec_point_is_at_infinity(e, r));
|
||||
|
||||
mbedtls_mpi_free( &num );
|
||||
mbedtls_mpi_free(&num);
|
||||
crypto_ec_point_deinit(p, 1);
|
||||
crypto_ec_point_deinit(q, 1);
|
||||
crypto_ec_point_deinit(r, 1);
|
||||
@@ -468,8 +464,8 @@ TEST_CASE("Test crypto lib ECC apis", "[wpa_crypto]")
|
||||
TEST_ASSERT_NOT_NULL(p);
|
||||
TEST_ASSERT_NOT_NULL(q);
|
||||
|
||||
mbedtls_mpi_init( &num );
|
||||
mbedtls_mpi_lset( &num, 50 );
|
||||
mbedtls_mpi_init(&num);
|
||||
mbedtls_mpi_lset(&num, 50);
|
||||
|
||||
ecp_mpi_load(& ((mbedtls_ecp_point *)p)->MBEDTLS_PRIVATE(X), secp256r1_gx, sizeof(secp256r1_gx));
|
||||
ecp_mpi_load(& ((mbedtls_ecp_point *)p)->MBEDTLS_PRIVATE(Y), secp256r1_gy, sizeof(secp256r1_gy));
|
||||
@@ -483,8 +479,7 @@ TEST_CASE("Test crypto lib ECC apis", "[wpa_crypto]")
|
||||
TEST_ASSERT(crypto_ec_point_mul(e, p, (crypto_bignum *) &num, q) == 0);
|
||||
TEST_ASSERT(crypto_ec_point_is_on_curve(e, q));
|
||||
|
||||
|
||||
mbedtls_mpi_free( &num );
|
||||
mbedtls_mpi_free(&num);
|
||||
crypto_ec_point_deinit(p, 1);
|
||||
crypto_ec_point_deinit(q, 1);
|
||||
crypto_ec_deinit(e);
|
||||
@@ -506,8 +501,8 @@ TEST_CASE("Test crypto lib ECC apis", "[wpa_crypto]")
|
||||
TEST_ASSERT_NOT_NULL(q);
|
||||
TEST_ASSERT_NOT_NULL(r);
|
||||
|
||||
mbedtls_mpi_init( &num );
|
||||
mbedtls_mpi_lset( &num, 50 );
|
||||
mbedtls_mpi_init(&num);
|
||||
mbedtls_mpi_lset(&num, 50);
|
||||
|
||||
ecp_mpi_load(& ((mbedtls_ecp_point *)p)->MBEDTLS_PRIVATE(X), secp256r1_gx, sizeof(secp256r1_gx));
|
||||
ecp_mpi_load(& ((mbedtls_ecp_point *)p)->MBEDTLS_PRIVATE(Y), secp256r1_gy, sizeof(secp256r1_gy));
|
||||
@@ -532,7 +527,7 @@ TEST_CASE("Test crypto lib ECC apis", "[wpa_crypto]")
|
||||
TEST_ASSERT(crypto_ec_point_add(e, q, r, r) == 0);
|
||||
TEST_ASSERT(crypto_ec_point_is_at_infinity(e, r));
|
||||
|
||||
mbedtls_mpi_free( &num );
|
||||
mbedtls_mpi_free(&num);
|
||||
crypto_ec_point_deinit(p, 1);
|
||||
crypto_ec_point_deinit(q, 1);
|
||||
crypto_ec_point_deinit(r, 1);
|
||||
|
Reference in New Issue
Block a user