Upgrade mokutil to 0.6.0
SBAT revocation update support delivered in mokutil 0.6.0 as well as shim-15.6 invoke "mokutil --set-sbat-policy latest" during the post script installation stage. So upgrade the version to 0.6.0 to make sure shim-15.6 can be upgraded smoothly. On the other hand, there are 4 patches delivered after 0.6.0 release to fix some bugs, apply these patches as well. *e498f64 Fix leak of fd in mok_get_variable() *d978c18 Fix leak of list in delete_data_from_req_var() *04791c2 mokutil bugfix: del unused opt "-s" *82694cb Show usage instead of aborting on bad flags Git-commit: e498f6460ff5aea6a7cd61a33087d03e88a2f52a Git-commit: d978c18f61b877afaab45a82d260b525423b8248 Git-commit: 04791c29e198b18808bca519267e31c8d3786a08 Git-commit: 82694cb1ce3b29c3705c25ae4cea3d07fe57b558 Link: https://github.com/lcp/mokutil/ Signed-off-by: Chenxi Mao <chenxi.mao@suse.com>
This commit is contained in:
parent
70ef07951f
commit
05417e978e
BIN
0.5.0.tar.gz
BIN
0.5.0.tar.gz
Binary file not shown.
BIN
0.6.0.tar.gz
Normal file
BIN
0.6.0.tar.gz
Normal file
Binary file not shown.
33
0001-Show-usage-instead-of-aborting-on-bad-flags.patch
Normal file
33
0001-Show-usage-instead-of-aborting-on-bad-flags.patch
Normal file
@ -0,0 +1,33 @@
|
||||
From 82694cb1ce3b29c3705c25ae4cea3d07fe57b558 Mon Sep 17 00:00:00 2001
|
||||
From: Robbie Harwood <rharwood@redhat.com>
|
||||
Date: Tue, 17 May 2022 11:23:28 -0400
|
||||
Subject: [PATCH 1/5] Show usage instead of aborting on bad flags
|
||||
|
||||
Aborting here just confuses users and is sufficiently unexpected to
|
||||
cause the filing of bugs.
|
||||
|
||||
Related: https://bugzilla.redhat.com/show_bug.cgi?id=2087066
|
||||
Signed-off-by: Robbie Harwood <rharwood@redhat.com>
|
||||
---
|
||||
src/mokutil.c | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/mokutil.c b/src/mokutil.c
|
||||
index 5d725c9..e8228af 100644
|
||||
--- a/src/mokutil.c
|
||||
+++ b/src/mokutil.c
|
||||
@@ -2087,10 +2087,9 @@ main (int argc, char *argv[])
|
||||
goto out;
|
||||
case 'h':
|
||||
case '?':
|
||||
+ default:
|
||||
command |= HELP;
|
||||
break;
|
||||
- default:
|
||||
- abort ();
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
2.33.0
|
||||
|
||||
28
0002-mokutil-bugfix-del-unused-opt-s.patch
Normal file
28
0002-mokutil-bugfix-del-unused-opt-s.patch
Normal file
@ -0,0 +1,28 @@
|
||||
From 04791c29e198b18808bca519267e31c8d3786a08 Mon Sep 17 00:00:00 2001
|
||||
From: gaoyusong <gaoyusong2@huawei.com>
|
||||
Date: Mon, 30 May 2022 17:54:47 +0800
|
||||
Subject: [PATCH 2/5] mokutil bugfix: del unused opt "-s"
|
||||
|
||||
The -s option can cause unexcepted result.
|
||||
|
||||
Signed-off-by: gaoyusong <gaoyusong2@huawei.com>
|
||||
---
|
||||
src/mokutil.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/mokutil.c b/src/mokutil.c
|
||||
index e8228af..6982ade 100644
|
||||
--- a/src/mokutil.c
|
||||
+++ b/src/mokutil.c
|
||||
@@ -1851,7 +1851,7 @@ main (int argc, char *argv[])
|
||||
};
|
||||
|
||||
int option_index = 0;
|
||||
- c = getopt_long (argc, argv, "cd:f:g::hi:lmpst:xDNPXv",
|
||||
+ c = getopt_long (argc, argv, "cd:f:g::hi:lmpt:xDNPXv",
|
||||
long_options, &option_index);
|
||||
|
||||
if (c == -1)
|
||||
--
|
||||
2.33.0
|
||||
|
||||
30
0003-Fix-leak-of-list-in-delete_data_from_req_var.patch
Normal file
30
0003-Fix-leak-of-list-in-delete_data_from_req_var.patch
Normal file
@ -0,0 +1,30 @@
|
||||
From d978c18f61b877afaab45a82d260b525423b8248 Mon Sep 17 00:00:00 2001
|
||||
From: Robbie Harwood <rharwood@redhat.com>
|
||||
Date: Thu, 2 Jun 2022 12:56:31 -0400
|
||||
Subject: [PATCH 3/5] Fix leak of list in delete_data_from_req_var()
|
||||
|
||||
Signed-off-by: Robbie Harwood <rharwood@redhat.com>
|
||||
---
|
||||
src/util.c | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/util.c b/src/util.c
|
||||
index 621869f..6cd0302 100644
|
||||
--- a/src/util.c
|
||||
+++ b/src/util.c
|
||||
@@ -295,8 +295,10 @@ delete_data_from_req_var (const MokRequest req, const efi_guid_t *type,
|
||||
}
|
||||
|
||||
/* the key or hash is not in this list */
|
||||
- if (start == NULL)
|
||||
- return 0;
|
||||
+ if (start == NULL) {
|
||||
+ ret = 0;
|
||||
+ goto done;
|
||||
+ }
|
||||
|
||||
/* all keys are removed */
|
||||
if (total == 0) {
|
||||
--
|
||||
2.33.0
|
||||
|
||||
72
0004-Fix-leak-of-fd-in-mok_get_variable.patch
Normal file
72
0004-Fix-leak-of-fd-in-mok_get_variable.patch
Normal file
@ -0,0 +1,72 @@
|
||||
From e498f6460ff5aea6a7cd61a33087d03e88a2f52a Mon Sep 17 00:00:00 2001
|
||||
From: Robbie Harwood <rharwood@redhat.com>
|
||||
Date: Thu, 2 Jun 2022 13:00:22 -0400
|
||||
Subject: [PATCH 4/5] Fix leak of fd in mok_get_variable()
|
||||
|
||||
On success, it was never closed. Refactor the code to use a single
|
||||
egress path so its closure is clear.
|
||||
|
||||
Signed-off-by: Robbie Harwood <rharwood@redhat.com>
|
||||
---
|
||||
src/util.c | 24 +++++++++++++-----------
|
||||
1 file changed, 13 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/src/util.c b/src/util.c
|
||||
index 6cd0302..f7fc033 100644
|
||||
--- a/src/util.c
|
||||
+++ b/src/util.c
|
||||
@@ -57,22 +57,21 @@ mok_get_variable(const char *name, uint8_t **datap, size_t *data_sizep)
|
||||
return fd;
|
||||
|
||||
rc = fstat(fd, &sb);
|
||||
- if (rc < 0) {
|
||||
-err_close:
|
||||
- close(fd);
|
||||
- return rc;
|
||||
- }
|
||||
+ if (rc < 0)
|
||||
+ goto done;
|
||||
|
||||
if (sb.st_size == 0) {
|
||||
errno = ENOENT;
|
||||
rc = -1;
|
||||
- goto err_close;
|
||||
+ goto done;
|
||||
}
|
||||
|
||||
bufsz = sb.st_size;
|
||||
buf = calloc(1, bufsz);
|
||||
- if (!buf)
|
||||
- goto err_close;
|
||||
+ if (!buf) {
|
||||
+ rc = -1;
|
||||
+ goto done;
|
||||
+ }
|
||||
|
||||
while (pos < bufsz) {
|
||||
ssz = read(fd, &buf[pos], bufsz - pos);
|
||||
@@ -82,15 +81,18 @@ err_close:
|
||||
errno == EINTR)
|
||||
continue;
|
||||
free(buf);
|
||||
- goto err_close;
|
||||
+ rc = -1;
|
||||
+ goto done;
|
||||
}
|
||||
|
||||
pos += ssz;
|
||||
}
|
||||
*datap = buf;
|
||||
*data_sizep = pos;
|
||||
-
|
||||
- return 0;
|
||||
+ rc = 0;
|
||||
+done:
|
||||
+ close(fd);
|
||||
+ return rc;
|
||||
}
|
||||
|
||||
MokListNode*
|
||||
--
|
||||
2.33.0
|
||||
|
||||
@ -1,11 +1,15 @@
|
||||
Name: mokutil
|
||||
Version: 0.5.0
|
||||
Version: 0.6.0
|
||||
Release: 1
|
||||
Epoch: 1
|
||||
Summary: Tools for manipulating machine owner keys
|
||||
License: GPLv3+
|
||||
URL: https://github.com/lcp/mokutil
|
||||
Source0: https://github.com/lcp/mokutil/archive/%{version}.tar.gz
|
||||
Patch0001: 0001-Show-usage-instead-of-aborting-on-bad-flags.patch
|
||||
Patch0002: 0002-mokutil-bugfix-del-unused-opt-s.patch
|
||||
Patch0003: 0003-Fix-leak-of-list-in-delete_data_from_req_var.patch
|
||||
Patch0004: 0004-Fix-leak-of-fd-in-mok_get_variable.patch
|
||||
|
||||
BuildRequires:gcc autoconf automake gnu-efi git openssl-devel openssl efivar-devel >= 31-1 git
|
||||
Conflicts: shim < 0.8-1
|
||||
@ -57,6 +61,9 @@ make check
|
||||
%{_mandir}/man1/*
|
||||
|
||||
%changelog
|
||||
* Wed Jun 29 2022 Chenxi Mao <chenxi.mao@suse.com> - 1:0.6.0-1
|
||||
- Update to 0.6.0 with latest bug fix
|
||||
|
||||
* Mon Dec 27 2021 openEuler Buildteam <buildteam@openeuler.org> - 1:0.5.0-1
|
||||
- Update to 0.5.0
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user