From 63b9c36a1686a8e02c8a5b29d993fc912466509b Mon Sep 17 00:00:00 2001 From: Stefan Berger Date: Wed, 12 Jul 2023 21:15:54 -0400 Subject: [PATCH] Insert assert ensuring *buflen != BUFLEN_EMPTY_BUFFER (Coverity) Address a false positive issue detect by Coverity (CID 1517797) about *buflen. Per this assignment of buflen cached_blobs[st].buflen = buffer ? buflen : BUFLEN_EMPTY_BUFFER; the following is true: If cached_blobs[].buffer is NULL then *buflen = BUFLEN_EMPTY_BUFFER If cached_blobs[].buffer is not NULL then *buflen != BUFLEN_EMPTY_BUFFER Signed-off-by: Stefan Berger --- src/tpm_library.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/tpm_library.c b/src/tpm_library.c index 5dd8fa4e..20153b7b 100644 --- a/src/tpm_library.c +++ b/src/tpm_library.c @@ -636,6 +636,8 @@ TPM_RESULT CopyCachedState(enum TPMLIB_StateType st, *is_empty_buffer = (*buflen == BUFLEN_EMPTY_BUFFER); if (cached_blobs[st].buffer) { + assert(*buflen != BUFLEN_EMPTY_BUFFER); + *buffer = malloc(*buflen); if (!*buffer) { TPMLIB_LogError("Could not allocate %u bytes.\n", *buflen);