summaryrefslogtreecommitdiff
path: root/user/grub/0006-cryptodisk-retval.patch
diff options
context:
space:
mode:
Diffstat (limited to 'user/grub/0006-cryptodisk-retval.patch')
-rw-r--r--user/grub/0006-cryptodisk-retval.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/user/grub/0006-cryptodisk-retval.patch b/user/grub/0006-cryptodisk-retval.patch
new file mode 100644
index 000000000..9db7f8434
--- /dev/null
+++ b/user/grub/0006-cryptodisk-retval.patch
@@ -0,0 +1,37 @@
+From 296d3ec835ed6e3b90d740e497bb534f14fe4b79 Mon Sep 17 00:00:00 2001
+From: Glenn Washburn <development@efficientek.com>
+Date: Fri, 18 Aug 2023 12:27:22 -0500
+Subject: disk/cryptodisk: Fix missing change when updating to use
+ grub_uuidcasecmp()
+
+This was causing the cryptomount command to return failure even though
+the crypto device was successfully added. Of course, this meant that any
+script using the return code would behave unexpectedly.
+
+Fixes: 3cf2e848bc03 (disk/cryptodisk: Allows UUIDs to be compared in a dash-insensitive manner)
+
+Suggested-by: Olaf Hering <olaf@aepfle.de>
+Signed-off-by: Glenn Washburn <development@efficientek.com>
+Reviewed-by: Patrich Steinhardt <ps@pks.im>
+Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
+---
+ grub-core/disk/cryptodisk.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/grub-core/disk/cryptodisk.c b/grub-core/disk/cryptodisk.c
+index 34b67a7..fb807e2 100644
+--- a/grub-core/disk/cryptodisk.c
++++ b/grub-core/disk/cryptodisk.c
+@@ -1236,7 +1236,8 @@ grub_cryptodisk_scan_device (const char *name,
+ dev = grub_cryptodisk_scan_device_real (name, source, cargs);
+ if (dev)
+ {
+- ret = (cargs->search_uuid != NULL && grub_strcasecmp (cargs->search_uuid, dev->uuid) == 0);
++ ret = (cargs->search_uuid != NULL
++ && grub_uuidcasecmp (cargs->search_uuid, dev->uuid, sizeof (dev->uuid)) == 0);
+ goto cleanup;
+ }
+
+--
+cgit v1.1
+