* [Buildroot] [PATCH 1/1] package/vboot-utils: bump to version 4b12d392e5b12de29c582df4e717b1228e9f1594
@ 2024-08-13 18:04 James Hilliard
2024-08-14 20:07 ` Thomas Petazzoni via buildroot
0 siblings, 1 reply; 2+ messages in thread
From: James Hilliard @ 2024-08-13 18:04 UTC (permalink / raw)
To: buildroot; +Cc: James Hilliard
Drop patches which are now upstream/not relevant.
Add a patch adding missing USE_FLASHROM guards.
Set USE_FLASHROM=0 make option to disable flashrom support.
Fixes:
- http://autobuild.buildroot.net/results/e55/e55af8335ef38e172e56544901510ae4dbdbff9b
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
...missing-definition-of-MTD_CHAR_MAJOR.patch | 10 +-
| 27 --
...m_csme-add-missing-USE_FLASHROM-guar.patch | 76 +++++
.../0003-Avoid-RSA-type-redefinition.patch | 44 ---
.../0004-Disable-static-futility.patch | 30 --
...05-include-sys-sysmacros.h-for-major.patch | 53 ----
.../0006-Update-for-openssl-1.1.patch | 268 ------------------
| 50 ----
package/vboot-utils/vboot-utils.hash | 2 +-
package/vboot-utils/vboot-utils.mk | 11 +-
10 files changed, 89 insertions(+), 482 deletions(-)
delete mode 100644 package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch
create mode 100644 package/vboot-utils/0002-futility-platform_csme-add-missing-USE_FLASHROM-guar.patch
delete mode 100644 package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch
delete mode 100644 package/vboot-utils/0004-Disable-static-futility.patch
delete mode 100644 package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch
delete mode 100644 package/vboot-utils/0006-Update-for-openssl-1.1.patch
delete mode 100644 package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch
diff --git a/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch b/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch
index 42410c8d13..c988c79529 100644
--- a/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch
+++ b/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch
@@ -1,4 +1,4 @@
-From 1438211660e700b2c9505863aae1cc957236b7c8 Mon Sep 17 00:00:00 2001
+From 90ed7f5cbe088912fbe0f3f45606de75602c1404 Mon Sep 17 00:00:00 2001
From: Alex Suykov <alex.suykov@gmail.com>
Date: Thu, 21 Jan 2016 21:59:46 +0100
Subject: [PATCH] Add missing definition of MTD_CHAR_MAJOR
@@ -11,12 +11,12 @@ Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
1 file changed, 4 insertions(+)
diff --git a/cgpt/cgpt_wrapper.c b/cgpt/cgpt_wrapper.c
-index dcfaab9..4d07aad 100644
+index afa4940e..38504aa6 100644
--- a/cgpt/cgpt_wrapper.c
+++ b/cgpt/cgpt_wrapper.c
-@@ -25,6 +25,10 @@
+@@ -33,6 +33,10 @@
#include "cgpt_nor.h"
- #include "cryptolib.h"
+ #include "file_keys.h"
+#ifndef MTD_CHAR_MAJOR
+#define MTD_CHAR_MAJOR 90
@@ -26,5 +26,5 @@ index dcfaab9..4d07aad 100644
// off device, and hence we should not wrap around cgpt.
static bool has_dash_D(int argc, const char *const argv[]) {
--
-2.6.4
+2.34.1
diff --git a/package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch b/package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch
deleted file mode 100644
index 4d559eabaf..0000000000
--- a/package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From b6bed8d4e9453bc74ba021c8c17e20c3b5964c37 Mon Sep 17 00:00:00 2001
-From: Alex Suykov <alex.suykov@gmail.com>
-Date: Thu, 21 Jan 2016 22:00:34 +0100
-Subject: [PATCH] Add missing header include for ssize_t
-
-The code uses ssize_t which is usually defined in <unistd.h>.
-
-Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
----
- host/lib/fmap.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/host/lib/fmap.c b/host/lib/fmap.c
-index c95338d..e3db826 100644
---- a/host/lib/fmap.c
-+++ b/host/lib/fmap.c
-@@ -6,6 +6,7 @@
-
- #include <stdio.h>
- #include <string.h>
-+#include <unistd.h>
-
- #include "fmap.h"
-
---
-2.6.4
-
diff --git a/package/vboot-utils/0002-futility-platform_csme-add-missing-USE_FLASHROM-guar.patch b/package/vboot-utils/0002-futility-platform_csme-add-missing-USE_FLASHROM-guar.patch
new file mode 100644
index 0000000000..890a732f71
--- /dev/null
+++ b/package/vboot-utils/0002-futility-platform_csme-add-missing-USE_FLASHROM-guar.patch
@@ -0,0 +1,76 @@
+From 3244ea140c1b5b07ebb30f3d17e467d853b0db0f Mon Sep 17 00:00:00 2001
+From: James Hilliard <james.hilliard1@gmail.com>
+Date: Tue, 13 Aug 2024 11:41:28 -0600
+Subject: [PATCH] futility/platform_csme: add missing USE_FLASHROM guards
+
+Fixes:
+build/futility/platform_csme.o: in function `find_fmba':
+futility/platform_csme.c:42: undefined reference to `find_firmware_section'
+build/futility/platform_csme.o: in function `unlock_csme':
+futility/platform_csme.c:200: undefined reference to `get_firmware_image_temp_file'
+futility/platform_csme.c:230: undefined reference to `reload_firmware_image'
+
+Change-Id: I74140d38d119f2a0e6b8cf8eef3f9f05cd43bbd7
+Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
+Upstream: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/5785792
+---
+ futility/platform_csme.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/futility/platform_csme.c b/futility/platform_csme.c
+index 2eb3ffcf..3829fe7b 100644
+--- a/futility/platform_csme.c
++++ b/futility/platform_csme.c
+@@ -33,6 +33,7 @@ struct fmba {
+ } __attribute__((packed));
+
+ static struct fmba * const find_fmba(const struct firmware_image *image) {
++#ifdef USE_FLASHROM
+ struct firmware_section section;
+ const uint32_t signature = 0x0FF0A55A;
+ const struct fdbar *fd;
+@@ -54,6 +55,9 @@ static struct fmba * const find_fmba(const struct firmware_image *image) {
+ return NULL;
+
+ return (struct fmba * const)(section.data + offset);
++#else
++ return NULL;
++#endif /* USE_FLASHROM */
+ }
+
+ static bool is_flmstr1_locked(const struct fmba * const fmba)
+@@ -132,6 +136,7 @@ int unlock_csme_eve(struct firmware_image *image)
+ return unlock_flmstrs(image, 0xffffff00, 0xffffff00, 0xffffff00);
+ }
+
++#ifdef USE_FLASHROM
+ /*
+ * Determine the platform to pass to ifdtool (e.g. 'adl') by extracting
+ * CONFIG_IFD_CHIPSET from the config file in CBFS. However, old nissa firmware
+@@ -183,6 +188,7 @@ static int run_ifdtool(const char *image_path, char *platform, const char *extra
+ free(command);
+ return ret;
+ }
++#endif /* USE_FLASHROM */
+
+ /*
+ * Unlock the CSME for recent Intel platforms (CML onwards).
+@@ -193,6 +199,7 @@ static int run_ifdtool(const char *image_path, char *platform, const char *extra
+ */
+ int unlock_csme(struct updater_config *cfg)
+ {
++#ifdef USE_FLASHROM
+ const char *temp_path;
+ char *platform;
+ int ret = -1;
+@@ -245,4 +252,7 @@ cleanup:
+ free(platform);
+
+ return ret;
++#else
++ return -1;
++#endif /* USE_FLASHROM */
+ }
+--
+2.34.1
+
diff --git a/package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch b/package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch
deleted file mode 100644
index 86374ca854..0000000000
--- a/package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 593407d2b3ea3b871d55ec399671e48c84b900a7 Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Thu, 21 Jan 2016 22:01:37 +0100
-Subject: [PATCH] Avoid RSA type redefinition
-
-The host_key.h headers does:
-
- typedef struct rsa_st RSA;
-
-But this type definition is already done by the OpenSSL headers.
-
-While such a type redefinition is legal with recent gcc versions, it
-doesn't build with older gcc versions such as gcc 4.4.
-
-To work around this problem, we instead use a forward declaration of
-"struct rsa_st", and change the only place where the RSA type was used
-by "struct rsa_st".
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- host/lib/include/host_key.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/host/lib/include/host_key.h b/host/lib/include/host_key.h
-index 9f98ccc..c2d01a5 100644
---- a/host/lib/include/host_key.h
-+++ b/host/lib/include/host_key.h
-@@ -12,11 +12,11 @@
- #include "vboot_struct.h"
-
-
--typedef struct rsa_st RSA;
-+struct rsa_st;
-
- /* Private key data */
- typedef struct VbPrivateKey {
-- RSA* rsa_private_key; /* Private key data */
-+ struct rsa_rt* rsa_private_key; /* Private key data */
- uint64_t algorithm; /* Algorithm to use when signing */
- } VbPrivateKey;
-
---
-2.6.4
-
diff --git a/package/vboot-utils/0004-Disable-static-futility.patch b/package/vboot-utils/0004-Disable-static-futility.patch
deleted file mode 100644
index 649d31629a..0000000000
--- a/package/vboot-utils/0004-Disable-static-futility.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-The package attempts to build a statically-linked host binary, futility_s,
-which is not used anywhere in buildroot but may be causing build failures
-if the build host lacks static libc.
-
-Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
-
---- a/Makefile
-+++ b/Makefile
-@@ -1079,7 +1079,7 @@
- # new Firmware Utility
-
- .PHONY: futil
--futil: ${FUTIL_STATIC_BIN} ${FUTIL_BIN}
-+futil: ${FUTIL_BIN}
-
- ${FUTIL_STATIC_BIN}: ${FUTIL_STATIC_OBJS} ${UTILLIB}
- @${PRINTF} " LD $(subst ${BUILD}/,,$@)\n"
-@@ -1091,10 +1091,10 @@
- ${Q}${LD} -o $@ ${CFLAGS} ${LDFLAGS} $^ ${LDLIBS}
-
- .PHONY: futil_install
--futil_install: ${FUTIL_BIN} ${FUTIL_STATIC_BIN}
-+futil_install: ${FUTIL_BIN}
- @${PRINTF} " INSTALL futility\n"
- ${Q}mkdir -p ${UB_DIR}
-- ${Q}${INSTALL} -t ${UB_DIR} ${FUTIL_BIN} ${FUTIL_STATIC_BIN}
-+ ${Q}${INSTALL} -t ${UB_DIR} ${FUTIL_BIN}
- ${Q}for prog in ${FUTIL_SYMLINKS}; do \
- ln -sf futility "${UB_DIR}/$$prog"; done
-
diff --git a/package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch b/package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch
deleted file mode 100644
index 3ab201fc3a..0000000000
--- a/package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 0495287f062a0cef989e02e0aee4f4329ab155b0 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@chromium.org>
-Date: Tue, 19 Apr 2016 13:58:49 -0400
-Subject: [PATCH] include sys/sysmacros.h for major()
-
-The major() func is defined in the sys/sysmacros.h header, so include it
-explicitly for the prototype. Upstream C libs are moving away from having
-sys/types.h include it all the time implicitly.
-
-BUG=None
-TEST=precq passes
-BRANCH=None
-
-Change-Id: I56b84138f08ded2376193403f9c9db22c5f24f71
-Reviewed-on: https://chromium-review.googlesource.com/339680
-Commit-Ready: Mike Frysinger <vapier@chromium.org>
-Tested-by: Mike Frysinger <vapier@chromium.org>
-Reviewed-by: Bill Richardson <wfrichar@google.com>
-Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
-[Dario: make the patch to be applied with fuzz factor 0]
-Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
----
- cgpt/cgpt_wrapper.c | 1 +
- futility/dump_kernel_config_lib.c | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/cgpt/cgpt_wrapper.c b/cgpt/cgpt_wrapper.c
-index 4d07aadac72d..6fbfb235ba7b 100644
---- a/cgpt/cgpt_wrapper.c
-+++ b/cgpt/cgpt_wrapper.c
-@@ -18,6 +18,7 @@
- #include <stdio.h>
- #include <string.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <sys/types.h>
- #include <unistd.h>
-
-diff --git a/futility/dump_kernel_config_lib.c b/futility/dump_kernel_config_lib.c
-index c2d59433ba71..448a2f6a831f 100644
---- a/futility/dump_kernel_config_lib.c
-+++ b/futility/dump_kernel_config_lib.c
-@@ -10,6 +10,7 @@
- #include <sys/mman.h>
- #include <sys/fcntl.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <sys/types.h>
- #include <unistd.h>
-
---
-2.43.0
-
diff --git a/package/vboot-utils/0006-Update-for-openssl-1.1.patch b/package/vboot-utils/0006-Update-for-openssl-1.1.patch
deleted file mode 100644
index 77e71e58b8..0000000000
--- a/package/vboot-utils/0006-Update-for-openssl-1.1.patch
+++ /dev/null
@@ -1,268 +0,0 @@
-From 2e730b2259c701f16d473dbfb7e58e86a6e71b01 Mon Sep 17 00:00:00 2001
-From: Daniel Kurtz <djkurtz@chromium.org>
-Date: Fri, 18 Jan 2019 13:04:59 +0200
-Subject: [PATCH] Update for openssl 1.1
-
-OpenSSL 1.1 has made significant non-backwards compatible changes to its
-API as outlined in:
-https://wiki.openssl.org/index.php/OpenSSL_1.1.0_Changes
-
-BRANCH=none
-BUG=chromium:738114
-TEST=cros_workon --host start vboot_reference
-TEST=w/ openssl-1.0.2k: sudo emerge vboot_reference
-TEST=w/ openssl-1.1.0e: sudo emerge vboot_reference
- => both build ok
- $ futility version
- => command runs without error
-TEST=cros_workon --board=soraka start vboot_reference coreboot
-TEST=w/ openssl-1.0.2k: emerge-soraka vboot_reference coreboot
-TEST=w/ openssl-1.1.0e: emerge-soraka vboot_reference coreboot
- => All build ok
-
-Change-Id: I37cfc8cbb04a092eab7b0b3224f475b82609447c
-Reviewed-on: https://chromium-review.googlesource.com/557739
-Commit-Ready: Daniel Kurtz <djkurtz@chromium.org>
-Tested-by: Daniel Kurtz <djkurtz@chromium.org>
-Reviewed-by: Randall Spangler <rspangler@chromium.org>
-Reviewed-by: Mike Frysinger <vapier@chromium.org>
-
-(cherry-picked from bce7904376beee2912932433a4634c1c25afe2f5)
-Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
----
- futility/cmd_create.c | 5 ++++-
- futility/vb2_helper.c | 7 +++++--
- host/include/openssl_compat.h | 26 ++++++++++++++++++++++++++
- host/lib/util_misc.c | 7 +++++--
- host/lib21/host_key.c | 8 +++++++-
- utility/dumpRSAPublicKey.c | 19 ++++++++++++++-----
- 6 files changed, 61 insertions(+), 11 deletions(-)
- create mode 100644 host/include/openssl_compat.h
-
-diff --git a/futility/cmd_create.c b/futility/cmd_create.c
-index 143ea9ae..80d3fd90 100644
---- a/futility/cmd_create.c
-+++ b/futility/cmd_create.c
-@@ -13,6 +13,7 @@
- #include "2common.h"
- #include "2id.h"
- #include "2rsa.h"
-+#include "openssl_compat.h"
- #include "util_misc.h"
- #include "vb2_common.h"
- #include "vb2_struct.h"
-@@ -170,6 +171,7 @@ static int vb2_make_keypair()
- enum vb2_signature_algorithm sig_alg;
- uint8_t *pubkey_buf = 0;
- int has_priv = 0;
-+ const BIGNUM *rsa_d;
-
- FILE *fp;
- int ret = 1;
-@@ -193,7 +195,8 @@ static int vb2_make_keypair()
- goto done;
- }
- /* Public keys doesn't have the private exponent */
-- has_priv = !!rsa_key->d;
-+ RSA_get0_key(rsa_key, NULL, NULL, &rsa_d);
-+ has_priv = !!rsa_d;
- if (!has_priv)
- fprintf(stderr, "%s has a public key only.\n", infile);
-
-diff --git a/futility/vb2_helper.c b/futility/vb2_helper.c
-index 51a78375..c6cc0fdd 100644
---- a/futility/vb2_helper.c
-+++ b/futility/vb2_helper.c
-@@ -11,6 +11,7 @@
- #include "2common.h"
- #include "2id.h"
- #include "2rsa.h"
-+#include "openssl_compat.h"
- #include "util_misc.h"
- #include "vb2_common.h"
- #include "vb2_struct.h"
-@@ -216,6 +217,7 @@ int ft_show_pem(const char *name, uint8_t *buf, uint32_t len, void *data)
- uint8_t *keyb, *digest;
- uint32_t keyb_len;
- int i, bits;
-+ const BIGNUM *rsa_key_n, *rsa_key_d;
-
- /* We're called only after ft_recognize_pem, so this should work. */
- rsa_key = rsa_from_buffer(buf, len);
-@@ -223,10 +225,11 @@ int ft_show_pem(const char *name, uint8_t *buf, uint32_t len, void *data)
- DIE;
-
- /* Use to presence of the private exponent to decide if it's public */
-- printf("%s Key file: %s\n", rsa_key->d ? "Private" : "Public",
-+ RSA_get0_key(rsa_key, &rsa_key_n, NULL, &rsa_key_d);
-+ printf("%s Key file: %s\n", rsa_key_d ? "Private" : "Public",
- name);
-
-- bits = BN_num_bits(rsa_key->n);
-+ bits = BN_num_bits(rsa_key_n);
- printf(" Key length: %d\n", bits);
-
- if (vb_keyb_from_rsa(rsa_key, &keyb, &keyb_len)) {
-diff --git a/host/include/openssl_compat.h b/host/include/openssl_compat.h
-new file mode 100644
-index 00000000..7771f32a
---- /dev/null
-+++ b/host/include/openssl_compat.h
-@@ -0,0 +1,26 @@
-+/* Copyright 2017 The Chromium OS Authors. All rights reserved.
-+ * Use of this source code is governed by a BSD-style license that can be
-+ * found in the LICENSE file.
-+ */
-+
-+#ifndef VBOOT_REFERENCE_OPENSSL_COMPAT_H_
-+#define VBOOT_REFERENCE_OPENSSL_COMPAT_H_
-+
-+#include <openssl/rsa.h>
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+
-+static inline void RSA_get0_key(const RSA *rsa, const BIGNUM **n,
-+ const BIGNUM **e, const BIGNUM **d)
-+{
-+ if (n != NULL)
-+ *n = rsa->n;
-+ if (e != NULL)
-+ *e = rsa->e;
-+ if (d != NULL)
-+ *d = rsa->d;
-+}
-+
-+#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */
-+
-+#endif /* VBOOT_REFERENCE_OPENSSL_COMPAT_H_ */
-diff --git a/host/lib/util_misc.c b/host/lib/util_misc.c
-index 03ec683f..f0a1f7ad 100644
---- a/host/lib/util_misc.c
-+++ b/host/lib/util_misc.c
-@@ -15,6 +15,7 @@
-
- #include "cryptolib.h"
- #include "host_common.h"
-+#include "openssl_compat.h"
- #include "util_misc.h"
- #include "vboot_common.h"
-
-@@ -58,6 +59,7 @@ int vb_keyb_from_rsa(struct rsa_st *rsa_private_key,
- BIGNUM *N0inv = NULL, *R = NULL, *RR = NULL;
- BIGNUM *RRTemp = NULL, *NnumBits = NULL;
- BIGNUM *n = NULL, *rr = NULL;
-+ const BIGNUM *rsa_private_key_n;
- BN_CTX *bn_ctx = BN_CTX_new();
- uint32_t n0invout;
- uint32_t bufsize;
-@@ -65,7 +67,7 @@ int vb_keyb_from_rsa(struct rsa_st *rsa_private_key,
- int retval = 1;
-
- /* Size of RSA key in 32-bit words */
-- nwords = BN_num_bits(rsa_private_key->n) / 32;
-+ nwords = RSA_size(rsa_private_key) / 4;
-
- bufsize = (2 + nwords + nwords) * sizeof(uint32_t);
- outbuf = malloc(bufsize);
-@@ -94,7 +96,8 @@ int vb_keyb_from_rsa(struct rsa_st *rsa_private_key,
- NEW_BIGNUM(B);
- #undef NEW_BIGNUM
-
-- BN_copy(N, rsa_private_key->n);
-+ RSA_get0_key(rsa_private_key, &rsa_private_key_n, NULL, NULL);
-+ BN_copy(N, rsa_private_key_n);
- BN_set_word(Big1, 1L);
- BN_set_word(Big2, 2L);
- BN_set_word(Big32, 32L);
-diff --git a/host/lib21/host_key.c b/host/lib21/host_key.c
-index f7ea1622..f9419ad3 100644
---- a/host/lib21/host_key.c
-+++ b/host/lib21/host_key.c
-@@ -17,6 +17,7 @@
- #include "host_common.h"
- #include "host_key2.h"
- #include "host_misc.h"
-+#include "openssl_compat.h"
-
- struct vb2_text_vs_enum vb2_text_vs_algorithm[] = {
- {"RSA1024 SHA1", VB2_ALG_RSA1024_SHA1},
-@@ -544,7 +545,12 @@ int vb2_public_key_hash(struct vb2_public_key *key,
-
- enum vb2_signature_algorithm vb2_rsa_sig_alg(struct rsa_st *rsa)
- {
-- int bits = BN_num_bits(rsa->n);
-+ const BIGNUM *e, *n;
-+ int exp, bits;
-+
-+ RSA_get0_key(rsa, &n, &e, NULL);
-+ exp = BN_get_word(e);
-+ bits = BN_num_bits(n);
-
- switch (bits) {
- case 1024:
-diff --git a/utility/dumpRSAPublicKey.c b/utility/dumpRSAPublicKey.c
-index b3b7b96b..a17b159e 100644
---- a/utility/dumpRSAPublicKey.c
-+++ b/utility/dumpRSAPublicKey.c
-@@ -14,14 +14,20 @@
- #include <string.h>
- #include <unistd.h>
-
-+#include "openssl_compat.h"
-+
- /* Command line tool to extract RSA public keys from X.509 certificates
- * and output a pre-processed version of keys for use by RSA verification
- * routines.
- */
-
- int check(RSA* key) {
-- int public_exponent = BN_get_word(key->e);
-- int modulus = BN_num_bits(key->n);
-+ const BIGNUM *n, *e;
-+ int public_exponent, modulus;
-+
-+ RSA_get0_key(key, &n, &e, NULL);
-+ public_exponent = BN_get_word(e);
-+ modulus = BN_num_bits(n);
-
- if (public_exponent != 65537) {
- fprintf(stderr, "WARNING: Public exponent should be 65537 (but is %d).\n",
-@@ -40,7 +46,8 @@ int check(RSA* key) {
- */
- void output(RSA* key) {
- int i, nwords;
-- BIGNUM *N = key->n;
-+ const BIGNUM *key_n;
-+ BIGNUM *N = NULL;
- BIGNUM *Big1 = NULL, *Big2 = NULL, *Big32 = NULL, *BigMinus1 = NULL;
- BIGNUM *B = NULL;
- BIGNUM *N0inv= NULL, *R = NULL, *RR = NULL, *RRTemp = NULL, *NnumBits = NULL;
-@@ -48,14 +55,15 @@ void output(RSA* key) {
- BN_CTX *bn_ctx = BN_CTX_new();
- uint32_t n0invout;
-
-- N = key->n;
- /* Output size of RSA key in 32-bit words */
-- nwords = BN_num_bits(N) / 32;
-+ nwords = RSA_size(key) / 4;
- if (-1 == write(1, &nwords, sizeof(nwords)))
- goto failure;
-
-
- /* Initialize BIGNUMs */
-+ RSA_get0_key(key, &key_n, NULL, NULL);
-+ N = BN_dup(key_n);
- Big1 = BN_new();
- Big2 = BN_new();
- Big32 = BN_new();
-@@ -120,6 +128,7 @@ void output(RSA* key) {
-
- failure:
- /* Free BIGNUMs. */
-+ BN_free(N);
- BN_free(Big1);
- BN_free(Big2);
- BN_free(Big32);
---
-2.14.1
-
diff --git a/package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch b/package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch
deleted file mode 100644
index 6a3929f3c0..0000000000
--- a/package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From df4d2000a22db673a788b8e57e8e7c0cc3cee777 Mon Sep 17 00:00:00 2001
-From: Leonard Chan <leonardchan@google.com>
-Date: Thu, 3 Oct 2019 18:53:04 -0700
-Subject: [PATCH] Make vboot_version extern in header
-
-When enabling `-fno-common` in Fuchsia, we get a bunch of linker errors
-when linking futility:
-
-```
-ld.lld: error: duplicate symbol: vboot_version
->>> defined at futility.h:43 (../../third_party/vboot_reference/futility/futility.h:43)
->>> host_x63-asan_no_detect_leaks/obj/third_party/vboot_reference/futility/futility.cmd_bdb.c.o:(vboot_version)
->>> defined at futility.h:43 (../../third_party/vboot_reference/futility/futility.h:43)
->>> host_x64-asan_no_detect_leaks/obj/third_party/vboot_reference/futility/futility.cmd_create.c.o:(.bss.vboot_version+0x0)
-```
-
-and think this is because -fno-common places vboot_version for
-unitialized global variables in the BSS section of each object file.
-Making it extern instead resolves each reference to its definition in
-futility/misc.c.
-
-Change-Id: I591f07abd1f975a8a9d078bb4366e2e0861390b4
-Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/1839207
-Reviewed-by: Julius Werner <jwerner@chromium.org>
-Reviewed-by: Joel Kitching <kitching@chromium.org>
-Commit-Queue: Julius Werner <jwerner@chromium.org>
-Tested-by: Julius Werner <jwerner@chromium.org>
-
-Patch taken from upstream: https://chromium.googlesource.com/chromiumos/platform/vboot_reference/+/df4d2000a22db673a788b8e57e8e7c0cc3cee777
-Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
----
- futility/futility.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/futility/futility.h b/futility/futility.h
-index 3bce1106..5dc426dd 100644
---- a/futility/futility.h
-+++ b/futility/futility.h
-@@ -41,7 +41,7 @@ enum vboot_version {
- };
-
- /* What's our preferred API & data format? */
--enum vboot_version vboot_version;
-+extern enum vboot_version vboot_version;
-
- /* Here's a structure to define the commands that futility implements. */
- struct futil_cmd_t {
---
-2.20.1
-
diff --git a/package/vboot-utils/vboot-utils.hash b/package/vboot-utils/vboot-utils.hash
index 1b622f25bf..13752f3a33 100644
--- a/package/vboot-utils/vboot-utils.hash
+++ b/package/vboot-utils/vboot-utils.hash
@@ -1,3 +1,3 @@
# Locally computed
-sha256 3e7b7e7f831e16cb07a7a09e1b74f1fff096d99b13c0d0d90d51ec3f80acd90b vboot-utils-bbdd62f9b030db7ad8eef789aaf58a7ff9a25656-git4.tar.gz
+sha256 d65c447d5b4624ffb87815071d2734c3802a73fdca56a06c910fd0ea8e82602d vboot-utils-4b12d392e5b12de29c582df4e717b1228e9f1594-git4.tar.gz
sha256 cb9dc8e96aedf9120b6757a60387db10f3c1a8e3fd97bb9d0f11327be5a7ed4d LICENSE
diff --git a/package/vboot-utils/vboot-utils.mk b/package/vboot-utils/vboot-utils.mk
index 3f63f458cc..3058d61ad8 100644
--- a/package/vboot-utils/vboot-utils.mk
+++ b/package/vboot-utils/vboot-utils.mk
@@ -4,7 +4,7 @@
#
################################################################################
-VBOOT_UTILS_VERSION = bbdd62f9b030db7ad8eef789aaf58a7ff9a25656
+VBOOT_UTILS_VERSION = 4b12d392e5b12de29c582df4e717b1228e9f1594
VBOOT_UTILS_SITE = https://chromium.googlesource.com/chromiumos/platform/vboot_reference
VBOOT_UTILS_SITE_METHOD = git
VBOOT_UTILS_LICENSE = BSD-3-Clause
@@ -26,17 +26,20 @@ HOST_VBOOT_UTILS_DEPENDENCIES = host-openssl host-util-linux host-pkgconf
# does not affect futil or cgpt in any way as long as it is one of the
# supported targets.
+HOST_VBOOT_UTILS_MAKE_OPTS = USE_FLASHROM=0
+
define HOST_VBOOT_UTILS_BUILD_CMDS
- $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
+ $(HOST_MAKE_ENV) $(MAKE) $(HOST_VBOOT_UTILS_MAKE_OPTS) -C $(@D) \
CC="$(HOSTCC)" \
- CFLAGS="$(HOST_CFLAGS) -D_LARGEFILE64_SOURCE -D_GNU_SOURCE" \
+ CPPFLAGS="$(HOST_CFLAGS) -D_LARGEFILE64_SOURCE -D_GNU_SOURCE" \
LDFLAGS="$(HOST_LDFLAGS)" \
ARCH=arm \
futil cgpt
endef
define HOST_VBOOT_UTILS_INSTALL_CMDS
- $(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) \
+ $(HOST_MAKE_ENV) $(MAKE) $(HOST_VBOOT_UTILS_MAKE_OPTS) -C $(@D) \
+ DESTDIR=$(HOST_DIR) \
futil_install cgpt_install devkeys_install
endef
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [Buildroot] [PATCH 1/1] package/vboot-utils: bump to version 4b12d392e5b12de29c582df4e717b1228e9f1594
2024-08-13 18:04 [Buildroot] [PATCH 1/1] package/vboot-utils: bump to version 4b12d392e5b12de29c582df4e717b1228e9f1594 James Hilliard
@ 2024-08-14 20:07 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 2+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-08-14 20:07 UTC (permalink / raw)
To: James Hilliard; +Cc: buildroot
Hello James,
On Tue, 13 Aug 2024 12:04:25 -0600
James Hilliard <james.hilliard1@gmail.com> wrote:
> Drop patches which are now upstream/not relevant.
>
> Add a patch adding missing USE_FLASHROM guards.
>
> Set USE_FLASHROM=0 make option to disable flashrom support.
>
> Fixes:
> - http://autobuild.buildroot.net/results/e55/e55af8335ef38e172e56544901510ae4dbdbff9b
>
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
> ...missing-definition-of-MTD_CHAR_MAJOR.patch | 10 +-
> ...d-missing-header-include-for-ssize_t.patch | 27 --
> ...m_csme-add-missing-USE_FLASHROM-guar.patch | 76 +++++
> .../0003-Avoid-RSA-type-redefinition.patch | 44 ---
> .../0004-Disable-static-futility.patch | 30 --
> ...05-include-sys-sysmacros.h-for-major.patch | 53 ----
> .../0006-Update-for-openssl-1.1.patch | 268 ------------------
> ...-Make-vboot_version-extern-in-header.patch | 50 ----
> package/vboot-utils/vboot-utils.hash | 2 +-
> package/vboot-utils/vboot-utils.mk | 11 +-
> 10 files changed, 89 insertions(+), 482 deletions(-)
> delete mode 100644 package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch
> create mode 100644 package/vboot-utils/0002-futility-platform_csme-add-missing-USE_FLASHROM-guar.patch
> delete mode 100644 package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch
> delete mode 100644 package/vboot-utils/0004-Disable-static-futility.patch
> delete mode 100644 package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch
> delete mode 100644 package/vboot-utils/0006-Update-for-openssl-1.1.patch
> delete mode 100644 package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch
I don't like very much applying version bumps to master now, but this
fixes a build issue, and drops a lot of patches, so: applied to master,
thanks!
Please note that you had forgotten to update the .checkpackageignore
file, so I had to do it when applying.
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-08-14 20:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-13 18:04 [Buildroot] [PATCH 1/1] package/vboot-utils: bump to version 4b12d392e5b12de29c582df4e717b1228e9f1594 James Hilliard
2024-08-14 20:07 ` Thomas Petazzoni via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox