tpm2-tools/tpm2_getmanufc-fix-OSSL-build-warnings.patch
Javier Martinez Canillas 83d0ae72b7
Fix broken -T option and a couple of minor fixes
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
2019-01-07 10:12:43 +01:00

90 lines
3.0 KiB
Diff
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

From e43831512dad43ec5537d30911dba5f4c36fef59 Mon Sep 17 00:00:00 2001
From: William Roberts <william.c.roberts@intel.com>
Date: Wed, 17 Oct 2018 08:27:11 -0700
Subject: [PATCH] tpm2_getmanufc: fix OSSL build warnings
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Fix the following reported error:
In file included from tools/tpm2_getmanufec.c:42:0:
tools/tpm2_getmanufec.c: In function Base64Encode:
/home/travis/build/AndreasFuchsSIT/tpm2-tss-engine/tpm2-tools/../installdir/usr/local/include/openssl/bio.h:596:34: error: value computed is not used [-Werror=unused-value]
# define BIO_flush(b) (int)BIO_ctrl(b,BIO_CTRL_FLUSH,0,NULL)
^
tools/tpm2_getmanufec.c:290:5: note: in expansion of macro BIO_flush
BIO_flush(bio);
^
/home/travis/build/AndreasFuchsSIT/tpm2-tss-engine/tpm2-tools/../installdir/usr/local/include/openssl/bio.h:589:34: error: value computed is not used [-Werror=unused-value]
# define BIO_set_close(b,c) (int)BIO_ctrl(b,BIO_CTRL_SET_CLOSE,(c),NULL)
^
tools/tpm2_getmanufec.c:292:5: note: in expansion of macro BIO_set_close
BIO_set_close(bio, BIO_NOCLOSE);
^
cc1: all warnings being treated as errors
make: *** [tools/tpm2_getmanufec.o] Error 1
make: *** Waiting for unfinished jobs....
Fixes: #1200
Signed-off-by: William Roberts <william.c.roberts@intel.com>
---
tools/tpm2_getmanufec.c | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/tools/tpm2_getmanufec.c b/tools/tpm2_getmanufec.c
index 6ddf31eee5d..89702f9c78a 100644
--- a/tools/tpm2_getmanufec.c
+++ b/tools/tpm2_getmanufec.c
@@ -274,6 +274,7 @@ char *Base64Encode(const unsigned char* buffer)
{
BIO *bio, *b64;
BUF_MEM *bufferPtr;
+ char *final_string = NULL;
LOG_INFO("Calculating the Base64Encode of the hash of the Endorsement Public Key:");
@@ -287,9 +288,19 @@ char *Base64Encode(const unsigned char* buffer)
bio = BIO_push(b64, bio);
BIO_set_flags(bio, BIO_FLAGS_BASE64_NO_NL);
BIO_write(bio, buffer, SHA256_DIGEST_LENGTH);
- BIO_flush(bio);
+ int rc = BIO_flush(bio);
+ if (rc < 0) {
+ LOG_ERR("BIO_flush() failed");
+ goto bio_out;
+ }
+
BIO_get_mem_ptr(bio, &bufferPtr);
- BIO_set_close(bio, BIO_NOCLOSE);
+
+ rc = BIO_set_close(bio, BIO_NOCLOSE);
+ if (rc < 0) {
+ LOG_ERR("BIO_set_close() failed");
+ goto bio_out;
+ }
/* these are not NULL terminated */
char *b64text = bufferPtr->data;
@@ -305,8 +316,6 @@ char *Base64Encode(const unsigned char* buffer)
}
}
- char *final_string = NULL;
-
CURL *curl = curl_easy_init();
if (curl) {
char *output = curl_easy_escape(curl, b64text, len);
@@ -317,6 +326,7 @@ char *Base64Encode(const unsigned char* buffer)
}
curl_easy_cleanup(curl);
curl_global_cleanup();
+bio_out:
BIO_free_all(bio);
/* format to a proper NULL terminated string */
--
2.19.2