Rename plain c option and update comments
Signed-off-by: Jerry Yu <jerry.h.yu@arm.com>
diff --git a/.travis.yml b/.travis.yml
index 10d67ee..26e6c57 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -147,7 +147,7 @@
- scripts/config.py unset MBEDTLS_AESNI_C
- scripts/config.py unset MBEDTLS_PADLOCK_C
- scripts/config.py set MBEDTLS_AESCE_C
- - scripts/config.py set MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO
+ - scripts/config.py set MBEDTLS_AES_USE_HARDWARE_ONLY
- make generated_files
- make
- programs/test/selftest
diff --git a/include/mbedtls/mbedtls_config.h b/include/mbedtls/mbedtls_config.h
index a1b564f..5474060 100644
--- a/include/mbedtls/mbedtls_config.h
+++ b/include/mbedtls/mbedtls_config.h
@@ -4008,8 +4008,14 @@
/*
* Platform independent implementation for crypto algorithms.
- * Disable plain c implementation for AES.
+ * Disable plain C implementation for AES.
+ *
+ * If the plain C implementation is enabled, and an implementation using a
+ * special CPU feature (such as MBEDTLS_AESCE_C) is also enabled, runtime
+ * detection will be used to select between them.
+ *
+ * If only one implementation is present, runtime detection will not be used.
*/
-//#define MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO /* Uncomment to disable plain c implementation of AES */
+//#define MBEDTLS_AES_USE_HARDWARE_ONLY
/** \} name SECTION: Module configuration options */
diff --git a/library/aesce.c b/library/aesce.c
index 4b7e048..8aa0789 100644
--- a/library/aesce.c
+++ b/library/aesce.c
@@ -99,7 +99,7 @@
#include <sys/auxv.h>
#endif
-#if !defined(MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO)
+#if !defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
/*
* AES instruction support detection routine
*/
diff --git a/library/aesce.h b/library/aesce.h
index 0af8f61..7e9c12a 100644
--- a/library/aesce.h
+++ b/library/aesce.h
@@ -33,7 +33,7 @@
#if !defined(MBEDTLS_HAVE_ARM64)
#if defined(__aarch64__) || defined(_M_ARM64) || defined(_M_ARM64EC)
#define MBEDTLS_HAVE_ARM64
-#if !defined(MBEDTLS_AESCE_C) && defined(MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO)
+#if !defined(MBEDTLS_AESCE_C) && defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
#error "MBEDTLS_AES_C defined, but not all prerequisites"
#endif
#endif
@@ -50,7 +50,7 @@
*
* \return 1 if CPU has support for the feature, 0 otherwise
*/
-#if !defined(MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO)
+#if !defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
int mbedtls_aesce_has_support(void);
#else
#define /* no-check-names */ mbedtls_aesce_has_support() 1
diff --git a/library/aesni.c b/library/aesni.c
index 31321c4..cc3a3b3 100644
--- a/library/aesni.c
+++ b/library/aesni.c
@@ -39,7 +39,7 @@
#include <immintrin.h>
#endif
-#if !defined(MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO)
+#if !defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
/*
* AES-NI support detection routine
*/
@@ -69,7 +69,7 @@
return (c & what) != 0;
}
-#endif /* !MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO */
+#endif /* !MBEDTLS_AES_USE_HARDWARE_ONLY */
#if MBEDTLS_AESNI_HAVE_CODE == 2
diff --git a/library/aesni.h b/library/aesni.h
index dddbf99..c17b613 100644
--- a/library/aesni.h
+++ b/library/aesni.h
@@ -39,7 +39,7 @@
(defined(__amd64__) || defined(__x86_64__)) && \
!defined(MBEDTLS_HAVE_X86_64)
#define MBEDTLS_HAVE_X86_64
-#if !defined(MBEDTLS_AESNI_C) && defined(MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO)
+#if !defined(MBEDTLS_AESNI_C) && defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
#error "MBEDTLS_AES_C defined, but not all prerequisites"
#endif
#endif
@@ -91,7 +91,7 @@
*
* \return 1 if CPU has support for the feature, 0 otherwise
*/
-#if !defined(MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO)
+#if !defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
int mbedtls_aesni_has_support(unsigned int what);
#else
#define /* no-check-names */ mbedtls_aesni_has_support(what) 1
diff --git a/library/padlock.c b/library/padlock.c
index 82b84bf..0011722 100644
--- a/library/padlock.c
+++ b/library/padlock.c
@@ -33,7 +33,7 @@
#if defined(MBEDTLS_HAVE_X86)
-#if !defined(MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO)
+#if !defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
/*
* PadLock detection routine
*/
diff --git a/library/padlock.h b/library/padlock.h
index 3b20d42..ad407f2 100644
--- a/library/padlock.h
+++ b/library/padlock.h
@@ -47,7 +47,7 @@
#include <stdint.h>
-#if !defined(MBEDTLS_PADLOCK_C) && defined(MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO)
+#if !defined(MBEDTLS_PADLOCK_C) && defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
#error "MBEDTLS_AES_C defined, but not all prerequisites"
#endif
@@ -72,7 +72,7 @@
*
* \return non-zero if CPU has support for the feature, 0 otherwise
*/
-#if !defined(MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO)
+#if !defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
int mbedtls_padlock_has_support(int feature);
#else
#define /* no-check-names */ mbedtls_padlock_has_support(feature) 1
diff --git a/tests/scripts/all.sh b/tests/scripts/all.sh
index 3ded9d6..c2704a9 100755
--- a/tests/scripts/all.sh
+++ b/tests/scripts/all.sh
@@ -4941,12 +4941,12 @@
python3 -m unittest tests/scripts/translate_ciphers.py 2>&1
}
-component_test_aes_builtin_only () {
+component_test_aes_donot_use_hardware () {
msg "Test: AES builtin only"
scripts/config.py unset MBEDTLS_AESNI_C
scripts/config.py unset MBEDTLS_PADLOCK_C
scripts/config.py unset MBEDTLS_AESCE_C
- scripts/config.py unset MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO
+ scripts/config.py unset MBEDTLS_AES_USE_HARDWARE_ONLY
msg "build: make, AES built-in only" # ~10s
make
@@ -4959,7 +4959,7 @@
scripts/config.py set MBEDTLS_AESNI_C
scripts/config.py unset MBEDTLS_PADLOCK_C
scripts/config.py unset MBEDTLS_AESCE_C
- scripts/config.py set MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO
+ scripts/config.py set MBEDTLS_AES_USE_HARDWARE_ONLY
msg "build: AESNI only" # ~10s
make
@@ -4972,7 +4972,7 @@
scripts/config.py unset MBEDTLS_AESNI_C
scripts/config.py set MBEDTLS_PADLOCK_C
scripts/config.py unset MBEDTLS_AESCE_C
- scripts/config.py set MBEDTLS_AES_DONT_USE_SOFTWARE_CRYPTO
+ scripts/config.py set MBEDTLS_AES_USE_HARDWARE_ONLY
msg "build: AES, VIA padlock only" # ~10s
make CC=gcc CFLAGS="$ASAN_CFLAGS -m32 -O2" LDFLAGS="-m32 $ASAN_CFLAGS"