Fix IAR build

Removed VLAs, replaced them with the possible maximum
array size.

Change-Id: I5348f5705a30f2222bdc158c14fe0c2795a6f6f7
Signed-off-by: Dávid Házi <david.hazi@arm.com>
diff --git a/tests_reg/test/secure_fw/suites/crypto/crypto_tests_common.c b/tests_reg/test/secure_fw/suites/crypto/crypto_tests_common.c
index a7f31ac..35703b2 100644
--- a/tests_reg/test/secure_fw/suites/crypto/crypto_tests_common.c
+++ b/tests_reg/test/secure_fw/suites/crypto/crypto_tests_common.c
@@ -11,6 +11,10 @@
 #include <string.h>
 #include "crypto_tests_common.h"
 
+/* Maximum array sizes to remove VLAs */
+#define PSA_HASH_LENGTH_MAX     64
+#define ECDSA_KEYS_PRIV_SZ_MAX  48
+
 void psa_key_interface_test(const psa_key_type_t key_type,
                             struct test_result_t *ret)
 {
@@ -2799,7 +2803,7 @@
         return;
     }
 
-    uint8_t encrypted_data[PSA_ASYMMETRIC_ENCRYPT_OUTPUT_SIZE(PSA_KEY_TYPE_RSA_KEY_PAIR, 2048, alg)];
+    uint8_t encrypted_data[PSA_BITS_TO_BYTES(2048)];
 
     status = psa_import_key(&key_attributes, key_pair, key_size, &key_id_local);
     if (status != PSA_SUCCESS) {
@@ -3219,15 +3223,21 @@
     }
 
     const size_t ecdsa_private_key_sz = ecdsa_keys[curve_selector].priv_sz;
-    uint8_t signature[PSA_ECDSA_SIGNATURE_SIZE(PSA_BYTES_TO_BITS(ecdsa_private_key_sz))];
+
+    assert(ECDSA_KEYS_PRIV_SZ_MAX >= ecdsa_private_key_sz);
+
+    uint8_t signature[PSA_ECDSA_SIGNATURE_SIZE(PSA_BYTES_TO_BITS(ECDSA_KEYS_PRIV_SZ_MAX))];
     char tmp_str[sizeof(signature) * 2 + 1]; /* enough to hold the hash string as well */
     size_t signature_length = 0;
     /* The expected format of the public key is uncompressed, i.e. 0x04 X Y */
     uint8_t ecdsa_pub_key[
-        PSA_KEY_EXPORT_ECC_PUBLIC_KEY_MAX_SIZE(PSA_BYTES_TO_BITS(ecdsa_private_key_sz))];
+        PSA_KEY_EXPORT_ECC_PUBLIC_KEY_MAX_SIZE(PSA_BYTES_TO_BITS(ECDSA_KEYS_PRIV_SZ_MAX))];
     size_t pub_key_length = 0;
     const psa_algorithm_t hash_alg = PSA_ALG_GET_HASH(alg);
-    uint8_t hash[PSA_HASH_LENGTH(hash_alg)];
+
+    assert(PSA_HASH_LENGTH_MAX >= PSA_HASH_LENGTH(hash_alg));
+
+    uint8_t hash[PSA_HASH_LENGTH_MAX];
     size_t hash_length = 0;
     uint8_t scratch_buffer[48 * 2 + 1]; /* Up to the P-384 pub key in uncompressed format */