fix scanbuild issue, use of NULL pointer in wc_Sha256Update

This commit is contained in:
Chris Conlon
2017-12-20 11:48:09 -07:00
parent e4ac38c532
commit f93ed32cb3

View File

@@ -58,6 +58,12 @@
if (sha == NULL || (data == NULL && len > 0)) {
return BAD_FUNC_ARG;
}
if (data == NULL && len == 0) {
/* valid, but do nothing */
return 0;
}
return Sha256Update_fips(sha, data, len);
}
int wc_Sha256Final(wc_Sha256* sha, byte* out)
@@ -433,6 +439,11 @@ static int InitSha256(wc_Sha256* sha256)
return BAD_FUNC_ARG;
}
if (data == NULL && len == 0) {
/* valid arguments, but do nothing */
return 0;
}
/* do block size increments */
local = (byte*)sha256->buffer;
@@ -671,6 +682,11 @@ static INLINE void AddLength(wc_Sha256* sha256, word32 len)
return BAD_FUNC_ARG;
}
if (data == NULL && len == 0) {
/* valid, but do nothing */
return 0;
}
#if defined(WOLFSSL_ASYNC_CRYPT) && defined(WC_ASYNC_ENABLE_SHA256)
if (sha256->asyncDev.marker == WOLFSSL_ASYNC_MARKER_SHA256) {
#if defined(HAVE_INTEL_QA)