From 4614b9ad1be3a9a04883afa9d7b582914f7d6341 Mon Sep 17 00:00:00 2001 From: Janos Follath Date: Thu, 21 Jul 2022 15:34:47 +0100 Subject: [PATCH] Move Bignum macros to common header Signed-off-by: Janos Follath --- library/bignum.c | 17 +---------------- library/bignum_core.h | 16 ++++++++++++++++ library/bignum_new.c | 16 ---------------- 3 files changed, 17 insertions(+), 32 deletions(-) diff --git a/library/bignum.c b/library/bignum.c index 55325b4c24..870365dd6b 100644 --- a/library/bignum.c +++ b/library/bignum.c @@ -39,6 +39,7 @@ #include "mbedtls/bignum.h" #include "bignum_internal.h" +#include "bignum_core.h" #include "bn_mul.h" #include "mbedtls/platform_util.h" #include "mbedtls/error.h" @@ -57,24 +58,8 @@ #define mbedtls_free free #endif -#define MPI_VALIDATE_RET( cond ) \ - MBEDTLS_INTERNAL_VALIDATE_RET( cond, MBEDTLS_ERR_MPI_BAD_INPUT_DATA ) -#define MPI_VALIDATE( cond ) \ - MBEDTLS_INTERNAL_VALIDATE( cond ) - -#define ciL (sizeof(mbedtls_mpi_uint)) /* chars in limb */ -#define biL (ciL << 3) /* bits in limb */ -#define biH (ciL << 2) /* half limb size */ - #define MPI_SIZE_T_MAX ( (size_t) -1 ) /* SIZE_T_MAX is not standard */ -/* - * Convert between bits/chars and number of limbs - * Divide first in order to avoid potential overflows - */ -#define BITS_TO_LIMBS(i) ( (i) / biL + ( (i) % biL != 0 ) ) -#define CHARS_TO_LIMBS(i) ( (i) / ciL + ( (i) % ciL != 0 ) ) - /* Implementation that should never be optimized out by the compiler */ static void mbedtls_mpi_zeroize( mbedtls_mpi_uint *v, size_t n ) { diff --git a/library/bignum_core.h b/library/bignum_core.h index 847a57186c..8f48debe2e 100644 --- a/library/bignum_core.h +++ b/library/bignum_core.h @@ -26,6 +26,22 @@ #include "mbedtls/bignum.h" #endif +#define MPI_VALIDATE_RET( cond ) \ + MBEDTLS_INTERNAL_VALIDATE_RET( cond, MBEDTLS_ERR_MPI_BAD_INPUT_DATA ) +#define MPI_VALIDATE( cond ) \ + MBEDTLS_INTERNAL_VALIDATE( cond ) + +#define ciL (sizeof(mbedtls_mpi_uint)) /* chars in limb */ +#define biL (ciL << 3) /* bits in limb */ +#define biH (ciL << 2) /* half limb size */ + +/* + * Convert between bits/chars and number of limbs + * Divide first in order to avoid potential overflows + */ +#define BITS_TO_LIMBS(i) ( (i) / biL + ( (i) % biL != 0 ) ) +#define CHARS_TO_LIMBS(i) ( (i) / ciL + ( (i) % ciL != 0 ) ) + int mbedtls_mpi_core_read_le( mbedtls_mpi_uint *X, size_t nx, const unsigned char *buf, diff --git a/library/bignum_new.c b/library/bignum_new.c index b01f742df7..e60d428928 100644 --- a/library/bignum_new.c +++ b/library/bignum_new.c @@ -40,22 +40,6 @@ #define mbedtls_free free #endif -#define MPI_VALIDATE_RET( cond ) \ - MBEDTLS_INTERNAL_VALIDATE_RET( cond, MBEDTLS_ERR_MPI_BAD_INPUT_DATA ) -#define MPI_VALIDATE( cond ) \ - MBEDTLS_INTERNAL_VALIDATE( cond ) - -#define ciL (sizeof(mbedtls_mpi_uint)) /* chars in limb */ -#define biL (ciL << 3) /* bits in limb */ -#define biH (ciL << 2) /* half limb size */ - -/* - * Convert between bits/chars and number of limbs - * Divide first in order to avoid potential overflows - */ -#define BITS_TO_LIMBS(i) ( (i) / biL + ( (i) % biL != 0 ) ) -#define CHARS_TO_LIMBS(i) ( (i) / ciL + ( (i) % ciL != 0 ) ) - /* * Count leading zero bits in a given integer */