tpm2-tools: bump to version 3.1.3
authorCarlos Santos <casantos@datacom.com.br>
Fri, 16 Nov 2018 02:52:17 +0000 (00:52 -0200)
committerPeter Korsgaard <peter@korsgaard.com>
Fri, 16 Nov 2018 19:21:09 +0000 (20:21 +0100)
- Drop C++ requirement, which came from tpm2-tss.
- Drop musl restriction.
- Drop the patch to build with LibreSSL, which is not required anymore.
- Update the patch for the "variable may be used uninitialized" error to
  match tpm2-tss 2.1.0, which defines TPM2_ALG_ERROR, not TPM_ALG_ERROR.

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/tpm2-tools/0001-Fix-build-with-LibreSSL.patch [deleted file]
package/tpm2-tools/0001-tpm2_certify-fix-type-may-be-used-uninitialized-warn.patch
package/tpm2-tools/Config.in
package/tpm2-tools/tpm2-tools.hash
package/tpm2-tools/tpm2-tools.mk

diff --git a/package/tpm2-tools/0001-Fix-build-with-LibreSSL.patch b/package/tpm2-tools/0001-Fix-build-with-LibreSSL.patch
deleted file mode 100644 (file)
index 0fdd2dc..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-From 7f8d9359dcf9edbb13bb447f70234397afa4fb05 Mon Sep 17 00:00:00 2001
-From: Carlos Santos <casantos@datacom.ind.br>
-Date: Tue, 30 Jan 2018 11:21:14 -0200
-Subject: [PATCH] Fix build with LibreSSL
-
-OPENSSL_VERSION_NUMBER is used to test the version of OpenSSL but this
-test alone breaks the build with LibreSSL due to implicit declarations
-of functions 'RSA_set0_key' and 'HMAC_CTX_free'.
-
-Test if OpenSSL < 1.1.0 or LIBRESSL_VERSION_NUMBER is defined, instead.
-
-Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
----
- lib/conversion.c | 2 +-
- lib/tpm_kdfa.c   | 6 +++---
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/lib/conversion.c b/lib/conversion.c
-index 1d0a0b7..df02de4 100644
---- a/lib/conversion.c
-+++ b/lib/conversion.c
-@@ -133,7 +133,7 @@ static bool tpm2_convert_pubkey_ssl(TPMT_PUBLIC *public, pubkey_format format, c
-         goto error;
-     }
--#if OPENSSL_VERSION_NUMBER < 0x1010000fL /* OpenSSL 1.1.0 */
-+#if OPENSSL_VERSION_NUMBER < 0x1010000fL || defined(LIBRESSL_VERSION_NUMBER) /* OpenSSL 1.1.0 */
-     ssl_rsa_key->e = e;
-     ssl_rsa_key->n = n;
- #else
-diff --git a/lib/tpm_kdfa.c b/lib/tpm_kdfa.c
-index ee3cf8a..e43bdeb 100644
---- a/lib/tpm_kdfa.c
-+++ b/lib/tpm_kdfa.c
-@@ -54,7 +54,7 @@ static const EVP_MD *tpm_algorithm_to_openssl_digest(TPMI_ALG_HASH algorithm) {
- static HMAC_CTX *hmac_alloc()
- {
-     HMAC_CTX *ctx;
--#if OPENSSL_VERSION_NUMBER < 0x1010000fL /* OpenSSL 1.1.0 */
-+#if OPENSSL_VERSION_NUMBER < 0x1010000fL || defined(LIBRESSL_VERSION_NUMBER) /* OpenSSL 1.1.0 */
-     ctx = malloc(sizeof(*ctx));
- #else
-     ctx = HMAC_CTX_new();
-@@ -62,7 +62,7 @@ static HMAC_CTX *hmac_alloc()
-     if (!ctx)
-         return NULL;
--#if OPENSSL_VERSION_NUMBER < 0x1010000fL
-+#if OPENSSL_VERSION_NUMBER < 0x1010000fL || defined(LIBRESSL_VERSION_NUMBER)
-     HMAC_CTX_init(ctx);
- #endif
-@@ -71,7 +71,7 @@ static HMAC_CTX *hmac_alloc()
- static void hmac_del(HMAC_CTX *ctx)
- {
--#if OPENSSL_VERSION_NUMBER < 0x1010000fL
-+#if OPENSSL_VERSION_NUMBER < 0x1010000fL || defined(LIBRESSL_VERSION_NUMBER)
-     HMAC_CTX_cleanup(ctx);
-     free(ctx);
- #else
--- 
-2.14.3
-
index b472666f46fdb30894e1fe7d586be771c6be9fa3..327f5e403be9ee842b094540e881489059d46432 100644 (file)
@@ -1,4 +1,4 @@
-From e15b01a1eb27e31964308892fcaa9c7d4f17f181 Mon Sep 17 00:00:00 2001
+From 295cd8f7fb8e1a1ad8f64d981e99969a364d941e Mon Sep 17 00:00:00 2001
 From: Carlos Santos <casantos@datacom.ind.br>
 Date: Sat, 24 Mar 2018 22:46:46 -0300
 Subject: [PATCH] tpm2_certify: fix "'type' may be used uninitialized" warning
@@ -10,7 +10,7 @@ because set_scheme returns immediately if get_key_type retuns false but
 the compiler does not understand that logic and fails because warnings
 are treated as errors.
 
-Adapted for version 3.0.3 from the change submitted upstream:
+Adapted for version 3.1.3 from the change submitted upstream:
 
   https://github.com/tpm2-software/tpm2-tools/pull/954
 
@@ -20,17 +20,17 @@ Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
  1 file changed, 1 insertion(+)
 
 diff --git a/tools/tpm2_certify.c b/tools/tpm2_certify.c
-index eaac02f..cbc42a9 100644
+index 0575072..e562586 100644
 --- a/tools/tpm2_certify.c
 +++ b/tools/tpm2_certify.c
-@@ -107,6 +107,7 @@ static bool get_key_type(TSS2_SYS_CONTEXT *sapi_context, TPMI_DH_OBJECT object_h
+@@ -98,6 +98,7 @@ static bool get_key_type(TSS2_SYS_CONTEXT *sapi_context, TPMI_DH_OBJECT object_h
              &out_public, &name, &qualified_name, &sessions_data_out));
-     if (rval != TPM_RC_SUCCESS) {
+     if (rval != TPM2_RC_SUCCESS) {
          LOG_ERR("TPM2_ReadPublic failed. Error Code: 0x%x", rval);
-+        *type = TPM_ALG_ERROR;
++        *type = TPM2_ALG_ERROR;
          return false;
      }
  
 -- 
-2.14.3
+2.19.1
 
index e5feb187868f4d98212a9635b4d1241e354c645e..24cd4b8f9ae1788bb2aabd1b0120d8762f0b0b20 100644 (file)
@@ -1,10 +1,8 @@
 config BR2_PACKAGE_TPM2_TOOLS
        bool "tpm2-tools"
-       depends on BR2_INSTALL_LIBSTDCPP # tpm2-tss
        depends on BR2_USE_MMU # dbus, libglib
        depends on BR2_USE_WCHAR # libglib -> gettext
        depends on BR2_TOOLCHAIN_HAS_THREADS # libglib
-       depends on !BR2_TOOLCHAIN_USES_MUSL # tpm2-abrmd
        select BR2_PACKAGE_DBUS
        select BR2_PACKAGE_LIBCURL
        select BR2_PACKAGE_LIBGLIB2
@@ -20,7 +18,6 @@ config BR2_PACKAGE_TPM2_TOOLS
 
          https://github.com/tpm2-software/tpm2-tools
 
-comment "tpm2-tools needs a uClibc or glibc toolchain w/ C++, wchar, threads"
+comment "tpm2-tools needs a toolchain w/ wchar, threads"
        depends on BR2_USE_MMU
-       depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \
-               || !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
+       depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
index e33b3e5945fb27d2af53d8a97ddbb55df709c6f0..ae228c591c32695f0ff7fbab6f567131a8441ffd 100644 (file)
@@ -1,3 +1,3 @@
 # Locally computed:
-sha256 c990c0656165afef0fad61e1852a9a189a4b93b43d2a684b151a5dc0b3c6249d  tpm2-tools-3.0.3.tar.gz
+sha256 cc95576f49cf9bacf75772fd98dcb7edc5172a6a8dfa20c215fe3cc69b0a3a16  tpm2-tools-3.1.3.tar.gz
 sha256 3d6b149c8b042bd5f3db678d587fbe55230d071ca084bd38dcae451679c6dd45  LICENSE
index 13fdb163bb119ab2f48a292aab68b94c07c05961..9c224018ce917b7bf6e03354c9487fe1b8de9a57 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-TPM2_TOOLS_VERSION = 3.0.3
+TPM2_TOOLS_VERSION = 3.1.3
 TPM2_TOOLS_SITE = https://github.com/tpm2-software/tpm2-tools/releases/download/$(TPM2_TOOLS_VERSION)
 TPM2_TOOLS_LICENSE = BSD-2-Clause
 TPM2_TOOLS_LICENSE_FILES = LICENSE