[prev in list] [next in list] [prev in thread] [next in thread]
List: openembedded-core
Subject: [OE-core][kirkstone 27/29] efivar: fix import functionality
From: "Steve Sakoman" <steve () sakoman ! com>
Date: 2022-07-29 14:46:43
Message-ID: 7d63a9d4f482276a4431c47cc4407ac2ad855b42.1659105705.git.steve () sakoman ! com
[Download RAW message or body]
Content-Transfer-Encoding: 8bit
From: gr embeter <grembeter@gmail.com>
"efivar --import" is broken in v38:
# efivar -i /8be4df61-93ca-11d2-aa0d-00e098032b8c-Timeout
free(): invalid pointer
Aborted
Backport upstream patch to fix it.
Upstream issue:
https://github.com/rhboot/efivar/issues/173
Signed-off-by: Grygorii Tertychnyi <grygorii.tertychnyi@leica-geosystems.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 27f263a9c69b711f39287c0dc8970ad41758fbb9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
.../0001-Fix-invalid-free-in-main.patch | 30 +++++++++++++++++++
meta/recipes-bsp/efivar/efivar_38.bb | 1 +
2 files changed, 31 insertions(+)
create mode 100644 meta/recipes-bsp/efivar/efivar/0001-Fix-invalid-free-in-main.patch
diff --git a/meta/recipes-bsp/efivar/efivar/0001-Fix-invalid-free-in-main.patch \
b/meta/recipes-bsp/efivar/efivar/0001-Fix-invalid-free-in-main.patch new file mode \
100644 index 0000000000..7e63df578e
--- /dev/null
+++ b/meta/recipes-bsp/efivar/efivar/0001-Fix-invalid-free-in-main.patch
@@ -0,0 +1,30 @@
+From 085f027e9e9f1478f68ddda705f83b244ee3bd88 Mon Sep 17 00:00:00 2001
+From: Robbie Harwood <rharwood@redhat.com>
+Date: Mon, 18 Apr 2022 13:08:18 -0400
+Subject: [PATCH] Fix invalid free in main()
+
+data is allocated by mmap() in prepare_data().
+
+Resolves: #173
+Signed-off-by: Robbie Harwood <rharwood@redhat.com>
+Upstream-Status: Backport
+Link: https://github.com/rhboot/efivar/commit/6be2cb1c0139ac177e754b0767abf1ca1533847f
+Signed-off-by: Grygorii Tertychnyi <grygorii.tertychnyi@leica-geosystems.com>
+
+---
+ src/efivar.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/efivar.c b/src/efivar.c
+index 5cd1eb2bc73c..09f85edd0a38 100644
+--- a/src/efivar.c
++++ b/src/efivar.c
+@@ -633,7 +633,7 @@ int main(int argc, char *argv[])
+ if (sz < 0)
+ err(1, "Could not import data from \"%s\"", infile);
+
+- free(data);
++ munmap(data, data_size);
+ data = NULL;
+ data_size = 0;
+
diff --git a/meta/recipes-bsp/efivar/efivar_38.bb \
b/meta/recipes-bsp/efivar/efivar_38.bb index 53fe20a95b..42625fa041 100644
--- a/meta/recipes-bsp/efivar/efivar_38.bb
+++ b/meta/recipes-bsp/efivar/efivar_38.bb
@@ -11,6 +11,7 @@ SRC_URI = \
"git://github.com/rhinstaller/efivar.git;branch=main;protocol=https \ \
file://0001-docs-do-not-build-efisecdb-manpage.patch \
file://0001-src-Makefile-build-util.c-separately-for-makeguids.patch \
file://efisecdb-fix-build-with-musl-libc.patch \
+ file://0001-Fix-invalid-free-in-main.patch \
"
SRCREV = "1753149d4176ebfb2b135ac0aaf79340bf0e7a93"
--
2.25.1
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#168662): https://lists.openembedded.org/g/openembedded-core/message/168662
Mute This Topic: https://lists.openembedded.org/mt/92692321/4454766
Group Owner: openembedded-core+owner@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [openembedded-core@marc.info]
-=-=-=-=-=-=-=-=-=-=-=-
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic