Add check for the ecp module variants
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com>
diff --git a/library/ecp.c b/library/ecp.c
index 1d690d1..6087256 100644
--- a/library/ecp.c
+++ b/library/ecp.c
@@ -3639,6 +3639,16 @@
#endif /* MBEDTLS_SELF_TEST */
+#if defined(MBEDTLS_TEST_HOOKS)
+
+MBEDTLS_STATIC_TESTABLE
+mbedtls_ecp_variant mbedtls_ecp_get_variant()
+{
+ return MBEDTLS_ECP_VARIANT_WITH_MPI_STRUCT;
+}
+
+#endif /* MBEDTLS_TEST_HOOKS */
+
#endif /* !MBEDTLS_ECP_ALT */
#endif /* MBEDTLS_ECP_LIGHT */
diff --git a/library/ecp_invasive.h b/library/ecp_invasive.h
index 0ea02e2..0a0d361 100644
--- a/library/ecp_invasive.h
+++ b/library/ecp_invasive.h
@@ -48,8 +48,21 @@
#define MBEDTLS_ECP_WITH_MPI_STRUCT
#endif
+typedef enum {
+ MBEDTLS_ECP_VARIANT_NONE = 0,
+ MBEDTLS_ECP_VARIANT_WITH_MPI_STRUCT = 1,
+ MBEDTLS_ECP_VARIANT_WITH_MPI_UINT = 2
+} mbedtls_ecp_variant;
+
#if defined(MBEDTLS_TEST_HOOKS) && defined(MBEDTLS_ECP_LIGHT)
+/** Queries the ecp variant.
+ *
+ * \return The id of the ecp variant.
+ */
+MBEDTLS_STATIC_TESTABLE
+mbedtls_ecp_variant mbedtls_ecp_get_variant(void);
+
#if defined(MBEDTLS_ECP_MONTGOMERY_ENABLED)
/** Generate a private key on a Montgomery curve (Curve25519 or Curve448).
*
diff --git a/library/ecp_new.c b/library/ecp_new.c
index c212f63..3df6f9f 100644
--- a/library/ecp_new.c
+++ b/library/ecp_new.c
@@ -3639,12 +3639,16 @@
#endif /* MBEDTLS_SELF_TEST */
+#if defined(MBEDTLS_TEST_HOOKS)
+
MBEDTLS_STATIC_TESTABLE
mbedtls_ecp_variant mbedtls_ecp_get_variant()
{
return MBEDTLS_ECP_VARIANT_WITH_MPI_UINT;
}
+#endif /* MBEDTLS_TEST_HOOKS */
+
#endif /* !MBEDTLS_ECP_ALT */
#endif /* MBEDTLS_ECP_LIGHT */