Skip to content

Commit 795942c

Browse files
parmi93TofMassilia13320
authored andcommitted
Make input buffers const in ECC verify
Mark the read-only buffers as `const` in `xxx_ecc_verify_signature()` to reflect that the input buffer is not modified. This improves const-correctness and clarifies the API contract.
1 parent 6b7e2cf commit 795942c

4 files changed

Lines changed: 18 additions & 18 deletions

File tree

api/stse_ecc.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@
2323
stse_ReturnCode_t stse_ecc_verify_signature(
2424
stse_Handler_t *pSTSE,
2525
stse_ecc_key_type_t key_type,
26-
PLAT_UI8 *pPublic_key,
27-
PLAT_UI8 *pSignature,
28-
PLAT_UI8 *pMessage,
26+
const PLAT_UI8 *pPublic_key,
27+
const PLAT_UI8 *pSignature,
28+
const PLAT_UI8 *pMessage,
2929
PLAT_UI16 message_length,
3030
PLAT_UI8 eddsa_variant,
3131
PLAT_UI8 *pSignature_validity) {

api/stse_ecc.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,9 @@
6060
stse_ReturnCode_t stse_ecc_verify_signature(
6161
stse_Handler_t *pSTSE,
6262
stse_ecc_key_type_t key_type,
63-
PLAT_UI8 *pPublic_key,
64-
PLAT_UI8 *pSignature,
65-
PLAT_UI8 *pMessage,
63+
const PLAT_UI8 *pPublic_key,
64+
const PLAT_UI8 *pSignature,
65+
const PLAT_UI8 *pMessage,
6666
PLAT_UI16 message_length,
6767
PLAT_UI8 eddsa_variant,
6868
PLAT_UI8 *pSignature_validity);

services/stsafea/stsafea_ecc.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -232,9 +232,9 @@ stse_ReturnCode_t stsafea_stop_volatile_KEK_session(
232232
stse_ReturnCode_t stsafea_ecc_verify_signature(
233233
stse_Handler_t *pSTSE,
234234
stse_ecc_key_type_t key_type,
235-
PLAT_UI8 *pPublic_key,
236-
PLAT_UI8 *pSignature,
237-
PLAT_UI8 *pMessage,
235+
const PLAT_UI8 *pPublic_key,
236+
const PLAT_UI8 *pSignature,
237+
const PLAT_UI8 *pMessage,
238238
PLAT_UI16 message_length,
239239
PLAT_UI8 eddsa_variant,
240240
PLAT_UI8 *pSignature_validity) {
@@ -291,7 +291,7 @@ stse_ReturnCode_t stsafea_ecc_verify_signature(
291291
if (key_type == STSE_ECC_KT_ED25519) {
292292
stse_frame_push_element(&CmdFrame, &ePublic_key_length_first_element);
293293
ePublic_key_first_element.length = stse_ecc_info_table[key_type].coordinate_or_key_size;
294-
ePublic_key_first_element.pData = pPublic_key;
294+
ePublic_key_first_element.pData = (PLAT_UI8 *)pPublic_key;
295295
stse_frame_push_element(&CmdFrame, &ePublic_key_first_element);
296296
} else
297297
#endif
@@ -301,20 +301,20 @@ stse_ReturnCode_t stsafea_ecc_verify_signature(
301301
stse_frame_push_element(&CmdFrame, &ePublic_key_length_first_element);
302302

303303
ePublic_key_first_element.length = stse_ecc_info_table[key_type].coordinate_or_key_size;
304-
ePublic_key_first_element.pData = pPublic_key;
304+
ePublic_key_first_element.pData = (PLAT_UI8 *)pPublic_key;
305305
stse_frame_push_element(&CmdFrame, &ePublic_key_first_element);
306306

307307
stse_frame_push_element(&CmdFrame, &ePublic_key_length_second_element);
308308

309309
ePublic_key_second_element.length = stse_ecc_info_table[key_type].coordinate_or_key_size;
310-
ePublic_key_second_element.pData = pPublic_key + ePublic_key_first_element.length;
310+
ePublic_key_second_element.pData = (PLAT_UI8 *)pPublic_key + ePublic_key_first_element.length;
311311
stse_frame_push_element(&CmdFrame, &ePublic_key_second_element);
312312
}
313313

314314
stse_frame_element_allocate_push(&CmdFrame, eSignature_R_length, STSE_ECC_GENERIC_LENGTH_SIZE, pSignature_length_element);
315-
stse_frame_element_allocate_push(&CmdFrame, eSignature_R, (stse_ecc_info_table[key_type].signature_size >> 1), pSignature);
315+
stse_frame_element_allocate_push(&CmdFrame, eSignature_R, (stse_ecc_info_table[key_type].signature_size >> 1), (PLAT_UI8 *)pSignature);
316316
stse_frame_element_allocate_push(&CmdFrame, eSignature_S_length, STSE_ECC_GENERIC_LENGTH_SIZE, pSignature_length_element);
317-
stse_frame_element_allocate_push(&CmdFrame, eSignature_S, (stse_ecc_info_table[key_type].signature_size >> 1), pSignature + (stse_ecc_info_table[key_type].signature_size >> 1));
317+
stse_frame_element_allocate_push(&CmdFrame, eSignature_S, (stse_ecc_info_table[key_type].signature_size >> 1), (PLAT_UI8 *)pSignature + (stse_ecc_info_table[key_type].signature_size >> 1));
318318

319319
#ifdef STSE_CONF_ECC_EDWARD_25519
320320
if (key_type == STSE_ECC_KT_ED25519) {
@@ -323,7 +323,7 @@ stse_ReturnCode_t stsafea_ecc_verify_signature(
323323
#endif
324324

325325
stse_frame_element_allocate_push(&CmdFrame, eMessage_length, STSAFEA_GENERIC_LENGTH_SIZE, (PLAT_UI8 *)&message_length);
326-
stse_frame_element_allocate_push(&CmdFrame, eMessage, message_length, pMessage);
326+
stse_frame_element_allocate_push(&CmdFrame, eMessage, message_length, (PLAT_UI8 *)pMessage);
327327
stse_frame_element_swap_byte_order(&eMessage_length);
328328

329329
stse_frame_allocate(RspFrame);

services/stsafea/stsafea_ecc.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,9 +101,9 @@ stse_ReturnCode_t stsafea_stop_volatile_KEK_session(
101101
stse_ReturnCode_t stsafea_ecc_verify_signature(
102102
stse_Handler_t *pSTSE,
103103
stse_ecc_key_type_t key_type,
104-
PLAT_UI8 *pPublic_key,
105-
PLAT_UI8 *pSignature,
106-
PLAT_UI8 *pMessage,
104+
const PLAT_UI8 *pPublic_key,
105+
const PLAT_UI8 *pSignature,
106+
const PLAT_UI8 *pMessage,
107107
PLAT_UI16 message_length,
108108
PLAT_UI8 eddsa_variant,
109109
PLAT_UI8 *pSignature_validity);

0 commit comments

Comments
 (0)