Add comment on memsan + constant-flow testing
diff --git a/tests/scripts/all.sh b/tests/scripts/all.sh
index 02f61d6..f5a256f 100755
--- a/tests/scripts/all.sh
+++ b/tests/scripts/all.sh
@@ -1032,14 +1032,20 @@
}
component_test_memsan_constant_flow () {
- msg "build: cmake memsan, full config with constant flow testing"
+ # This tests both (1) accesses to undefined memory, and (2) branches or
+ # memory access depending on secret values. To distinguish between those:
+ # - unset MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN - does the failure persist?
+ # - or alternatively, change the build type to MemSanDbg, which enables
+ # origin tracking and nicer stack traces (which are useful for debugging
+ # anyway), and check if the origin was TEST_CF_SECRET() or something else.
+ msg "build: cmake MSan (clang), full config with constant flow testing"
scripts/config.pl full
scripts/config.pl set MBEDTLS_TEST_CONSTANT_FLOW_MEMSAN
scripts/config.pl unset MBEDTLS_AESNI_C # memsan doesn't grok asm
CC=clang cmake -D CMAKE_BUILD_TYPE:String=MemSan .
make
- msg "test: main suites (memsan constant flow)"
+ msg "test: main suites (Msan + constant flow)"
make test
}