Skip to content

Commit 229135c

Browse files
committed
add crypt_mp_init()
1 parent 89990f0 commit 229135c

File tree

4 files changed

+51
-80
lines changed

4 files changed

+51
-80
lines changed

demos/timing.c

Lines changed: 1 addition & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1399,45 +1399,6 @@ static void time_encmacs(void)
13991399
time_encmacs_(32);
14001400
}
14011401

1402-
static void init_mpi(const char* mpi)
1403-
{
1404-
switch (mpi[0]) {
1405-
#ifdef LTM_DESC
1406-
case 'l':
1407-
init_LTM();
1408-
break;
1409-
#endif
1410-
#ifdef TFM_DESC
1411-
case 't':
1412-
init_TFM();
1413-
break;
1414-
#endif
1415-
#ifdef GMP_DESC
1416-
case 'g':
1417-
init_GMP();
1418-
break;
1419-
#endif
1420-
#ifdef EXT_MATH_LIB
1421-
case 'e':
1422-
{
1423-
extern ltc_math_descriptor EXT_MATH_LIB;
1424-
ltc_mp = EXT_MATH_LIB;
1425-
}
1426-
1427-
#define NAME_VALUE(s) #s"="NAME(s)
1428-
#define NAME(s) #s
1429-
printf("EXT_MATH_LIB = %s\n", NAME_VALUE(EXT_MATH_LIB));
1430-
#undef NAME_VALUE
1431-
#undef NAME
1432-
1433-
break;
1434-
#endif
1435-
default:
1436-
printf("Unknown/Invalid MPI provider: %s\n", mpi);
1437-
break;
1438-
}
1439-
}
1440-
14411402
#define LTC_TEST_FN(f) { f, #f }
14421403
int main(int argc, char **argv)
14431404
{
@@ -1488,7 +1449,7 @@ register_all_prngs();
14881449
mpi_provider = argv[2];
14891450
}
14901451

1491-
init_mpi(mpi_provider);
1452+
crypt_mp_init(mpi_provider);
14921453

14931454
if ((err = rng_make_prng(128, find_prng("yarrow"), &yarrow_prng, NULL)) != CRYPT_OK) {
14941455
fprintf(stderr, "rng_make_prng failed: %s\n", error_to_string(err));

src/headers/tomcrypt_misc.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ void init_TFM(void);
8181
#ifdef GMP_DESC
8282
void init_GMP(void);
8383
#endif
84+
int crypt_mp_init(const char* mpi);
8485

8586
#ifdef LTC_ADLER32
8687
typedef struct adler32_state_s

src/misc/crypt/crypt_inits.c

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,54 @@ void init_GMP(void)
3737
}
3838
#endif
3939

40+
int crypt_mp_init(const char* mpi)
41+
{
42+
if (mpi == NULL) return CRYPT_ERROR;
43+
switch (mpi[0]) {
44+
#ifdef LTM_DESC
45+
case 'l':
46+
case 'L':
47+
init_LTM();
48+
return CRYPT_OK;
49+
#endif
50+
#ifdef TFM_DESC
51+
case 't':
52+
case 'T':
53+
init_TFM();
54+
return CRYPT_OK;
55+
#endif
56+
#ifdef GMP_DESC
57+
case 'g':
58+
case 'G':
59+
init_GMP();
60+
return CRYPT_OK;
61+
#endif
62+
#ifdef EXT_MATH_LIB
63+
case 'e':
64+
case 'E':
65+
{
66+
extern ltc_math_descriptor EXT_MATH_LIB;
67+
ltc_mp = EXT_MATH_LIB;
68+
}
69+
70+
#if defined(LTC_TEST_DBG)
71+
#define NAME_VALUE(s) #s"="NAME(s)
72+
#define NAME(s) #s
73+
printf("EXT_MATH_LIB = %s\n", NAME_VALUE(EXT_MATH_LIB));
74+
#undef NAME_VALUE
75+
#undef NAME
76+
#endif
77+
78+
return CRYPT_OK;
79+
#endif
80+
default:
81+
#if defined(LTC_TEST_DBG)
82+
printf("Unknown/Invalid MPI provider: %s\n", mpi);
83+
#endif
84+
return CRYPT_ERROR;
85+
}
86+
}
87+
4088

4189
/* ref: $Format:%D$ */
4290
/* git commit: $Format:%H$ */

tests/test.c

Lines changed: 1 addition & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -289,45 +289,6 @@ static void register_algs(void)
289289
}
290290
}
291291

292-
static void init_mpi(const char* mpi)
293-
{
294-
switch (mpi[0]) {
295-
#ifdef LTM_DESC
296-
case 'l':
297-
init_LTM();
298-
break;
299-
#endif
300-
#ifdef TFM_DESC
301-
case 't':
302-
init_TFM();
303-
break;
304-
#endif
305-
#ifdef GMP_DESC
306-
case 'g':
307-
init_GMP();
308-
break;
309-
#endif
310-
#ifdef EXT_MATH_LIB
311-
case 'e':
312-
{
313-
extern ltc_math_descriptor EXT_MATH_LIB;
314-
ltc_mp = EXT_MATH_LIB;
315-
}
316-
317-
#define NAME_VALUE(s) #s"="NAME(s)
318-
#define NAME(s) #s
319-
printf("EXT_MATH_LIB = %s\n", NAME_VALUE(EXT_MATH_LIB));
320-
#undef NAME_VALUE
321-
#undef NAME
322-
323-
break;
324-
#endif
325-
default:
326-
printf("Unknown/Invalid MPI provider: %s\n", mpi);
327-
break;
328-
}
329-
}
330-
331292
int main(int argc, char **argv)
332293
{
333294
#ifdef LTC_PTHREAD
@@ -357,7 +318,7 @@ int main(int argc, char **argv)
357318
mpi_provider = argv[2];
358319
}
359320

360-
init_mpi(mpi_provider);
321+
crypt_mp_init(mpi_provider);
361322

362323
if (ltc_mp.name != NULL) {
363324
printf("MP_PROVIDER = %s\n", ltc_mp.name);

0 commit comments

Comments
 (0)