systemd/backport-sysext-refuse-empty-release-ID-to-avoid-triggering-a.patch
2023-06-19 11:08:46 +08:00

32 lines
1.3 KiB
Diff

From 6100e1dded709f681aca0cf913095e2591a54e33 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Sat, 21 May 2022 03:03:21 +0900
Subject: [PATCH] sysext: refuse empty release ID to avoid triggering assertion
Otherwise, the assertion in extension_release_validate() will be
triggered.
(cherry picked from commit 30e29edf4c0bb025aa7dc03c415b727fddf996ac)
---
src/sysext/sysext.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/sysext/sysext.c b/src/sysext/sysext.c
index 60789e0f2c..4245bf1760 100644
--- a/src/sysext/sysext.c
+++ b/src/sysext/sysext.c
@@ -483,6 +483,10 @@ static int merge_subprocess(Hashmap *images, const char *workspace) {
"SYSEXT_LEVEL", &host_os_release_sysext_level);
if (r < 0)
return log_error_errno(r, "Failed to acquire 'os-release' data of OS tree '%s': %m", empty_to_root(arg_root));
+ if (isempty(host_os_release_id))
+ return log_error_errno(SYNTHETIC_ERRNO(EINVAL),
+ "'ID' field not found or empty in 'os-release' data of OS tree '%s': %m",
+ empty_to_root(arg_root));
/* Let's now mount all images */
HASHMAP_FOREACH(img, images) {
--
2.33.0