15
|
1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis |
|
2 * |
|
3 * LibTomCrypt is a library that provides various cryptographic |
|
4 * algorithms in a highly modular and flexible manner. |
|
5 * |
|
6 * The library is free for all purposes without any express |
|
7 * guarantee it works. |
|
8 * |
|
9 * Tom St Denis, [email protected], http://libtomcrypt.org |
|
10 */ |
|
11 |
|
12 #include "mycrypt.h" |
|
13 |
|
14 #ifdef MPI |
|
15 static const struct { |
|
16 int mpi_code, ltc_code; |
|
17 } mpi_to_ltc_codes[] = { |
|
18 { MP_OKAY , CRYPT_OK}, |
|
19 { MP_MEM , CRYPT_MEM}, |
|
20 { MP_VAL , CRYPT_INVALID_ARG}, |
|
21 }; |
|
22 |
|
23 /* convert a MPI error to a LTC error (Possibly the most powerful function ever! Oh wait... no) */ |
|
24 int mpi_to_ltc_error(int err) |
|
25 { |
|
26 int x; |
|
27 |
|
28 for (x = 0; x < (int)(sizeof(mpi_to_ltc_codes)/sizeof(mpi_to_ltc_codes[0])); x++) { |
|
29 if (err == mpi_to_ltc_codes[x].mpi_code) { |
|
30 return mpi_to_ltc_codes[x].ltc_code; |
|
31 } |
|
32 } |
|
33 return CRYPT_ERROR; |
|
34 } |
|
35 #endif |
|
36 |