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