37 lines
916 B
C
37 lines
916 B
C
/* LibTomCrypt, modular cryptographic library -- Tom St Denis
|
|
*
|
|
* LibTomCrypt is a library that provides various cryptographic
|
|
* algorithms in a highly modular and flexible manner.
|
|
*
|
|
* The library is free for all purposes without any express
|
|
* guarantee it works.
|
|
*
|
|
* Tom St Denis, tomstdenis@iahu.ca, http://libtomcrypt.org
|
|
*/
|
|
|
|
#include "mycrypt.h"
|
|
|
|
#ifdef MPI
|
|
static const struct {
|
|
int mpi_code, ltc_code;
|
|
} mpi_to_ltc_codes[] = {
|
|
{ MP_OKAY , CRYPT_OK},
|
|
{ MP_MEM , CRYPT_MEM},
|
|
{ MP_VAL , CRYPT_INVALID_ARG},
|
|
};
|
|
|
|
/* convert a MPI error to a LTC error (Possibly the most powerful function ever! Oh wait... no) */
|
|
int mpi_to_ltc_error(int err)
|
|
{
|
|
int x;
|
|
|
|
for (x = 0; x < (int)(sizeof(mpi_to_ltc_codes)/sizeof(mpi_to_ltc_codes[0])); x++) {
|
|
if (err == mpi_to_ltc_codes[x].mpi_code) {
|
|
return mpi_to_ltc_codes[x].ltc_code;
|
|
}
|
|
}
|
|
return CRYPT_ERROR;
|
|
}
|
|
#endif
|
|
|