Fix uninitialized variable in x509_crt

This patch fixes an issue we encountered with more stringent compiler
warnings.  The signature_is_good variable has a possibility of being
used uninitialized.  This patch moves the use of the variable to a
place where it cannot be used while uninitialized.

Signed-off-by: Andy Gross <andy.gross@linaro.org>
This commit is contained in:
Andy Gross 2019-01-30 10:25:53 -06:00 committed by Paul Sokolovsky
parent 3ec504738e
commit 1f62714db8
2 changed files with 7 additions and 6 deletions

View file

@ -49,6 +49,9 @@ Bugfix
* Fix propagation of restart contexts in restartable EC operations.
This could previously lead to segmentation faults in builds using an
address-sanitizer and enabling but not using MBEDTLS_ECP_RESTARTABLE.
* Improve code clarity in x509_crt module, removing false-positive
uninitialized variable warnings on some recent toolchains (GCC8, etc).
Discovered and fixed by Andy Gross (Linaro), #2392.
Changes
* Replace multiple uses of MD2 by SHA-256 in X.509 test suite. Fixes #821.

View file

@ -2611,15 +2611,13 @@ check_signature:
continue;
}
*r_parent = parent;
*r_signature_is_good = signature_is_good;
break;
}
if( parent != NULL )
{
*r_parent = parent;
*r_signature_is_good = signature_is_good;
}
else
if( parent == NULL )
{
*r_parent = fallback_parent;
*r_signature_is_good = fallback_signature_is_good;