1
0
mirror of https://github.com/Mbed-TLS/mbedtls.git synced 2025-08-08 17:42:09 +03:00

Support larger integer test arguments: C part

Change the type of signed integer arguments from int32_t to intmax_t.
This allows the C code to work with test function arguments with a range
larger than int32_t. A subsequent commit will change the .datax generator
to support larger types.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
This commit is contained in:
Gilles Peskine
2022-12-04 15:32:54 +01:00
parent 4ea4ad082b
commit 872948cc72
5 changed files with 12 additions and 14 deletions

View File

@@ -473,7 +473,7 @@ def parse_function_argument(arg, arg_idx, args, local_vars, args_dispatch):
typ, _ = m.groups()
if typ in INTEGER_TYPES:
args.append('int')
args_dispatch.append('((mbedtls_test_argument_t*)params[%d])->s32' % arg_idx)
args_dispatch.append('((mbedtls_test_argument_t*)params[%d])->sint' % arg_idx)
return 1
if typ in STRING_TYPES:
args.append('char*')

View File

@@ -487,8 +487,8 @@ class ParseFuncSignature(TestCase):
self.assertEqual(local, '')
self.assertEqual(arg_dispatch,
['(char *) params[0]',
'((mbedtls_test_argument_t*)params[1])->s32',
'((mbedtls_test_argument_t*)params[2])->s32'])
'((mbedtls_test_argument_t*)params[1])->sint',
'((mbedtls_test_argument_t*)params[2])->sint'])
def test_hex_params(self):
"""
@@ -503,7 +503,7 @@ class ParseFuncSignature(TestCase):
'((mbedtls_test_argument_t*)params[2])->len};\n')
self.assertEqual(arg_dispatch, ['(char *) params[0]',
'&data1',
'((mbedtls_test_argument_t*)params[3])->s32'])
'((mbedtls_test_argument_t*)params[3])->sint'])
def test_unsupported_arg(self):
"""