nalika / rpms / grub2

Forked from rpms/grub2 2 years ago
Clone
Blob Blame History Raw
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Daniel Kiper <daniel.kiper@oracle.com>
Date: Thu, 6 Dec 2018 13:43:05 +0100
Subject: [PATCH] verifiers: ARM Xen fallout cleanup

ARM Xen fallout cleanup after commit ca0a4f689 (verifiers: File type for
fine-grained signature-verification controlling).

Signed-off-by: Daniel Kiper <daniel.kiper@oracle.com>
Reviewed-by: Ross Philipson <ross.philipson@oracle.com>
[javierm: remove grub_file_filter_disable_compression() call leftovers]
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>

Conflicts:
	grub-core/loader/arm64/xen_boot.c
---
 grub-core/loader/arm64/xen_boot.c | 9 +++++----
 include/grub/file.h               | 5 +++++
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/grub-core/loader/arm64/xen_boot.c b/grub-core/loader/arm64/xen_boot.c
index f35b16caa92..318c833de57 100644
--- a/grub-core/loader/arm64/xen_boot.c
+++ b/grub-core/loader/arm64/xen_boot.c
@@ -427,9 +427,10 @@ grub_cmd_xen_module (grub_command_t cmd __attribute__((unused)),
 
   grub_dprintf ("xen_loader", "Init module and node info\n");
 
-  if (nounzip)
-    grub_file_filter_disable_compression ();
-  file = grub_file_open (argv[0]);
+  file = grub_file_open (argv[0], GRUB_FILE_TYPE_XEN_MODULE
+                        | (nounzip ? GRUB_FILE_TYPE_NO_DECOMPRESS
+                           : GRUB_FILE_TYPE_NONE));
+
   if (!file)
     goto fail;
 
@@ -461,7 +462,7 @@ grub_cmd_xen_hypervisor (grub_command_t cmd __attribute__ ((unused)),
       goto fail;
     }
 
-  file = grub_file_open (argv[0]);
+  file = grub_file_open (argv[0], GRUB_FILE_TYPE_XEN_HYPERVISOR);
   if (!file)
     goto fail;
 
diff --git a/include/grub/file.h b/include/grub/file.h
index 9aae463557a..cbbd294655b 100644
--- a/include/grub/file.h
+++ b/include/grub/file.h
@@ -42,6 +42,11 @@ enum grub_file_type
     /* Multiboot module.  */
     GRUB_FILE_TYPE_MULTIBOOT_MODULE,
 
+    /* Xen hypervisor - used on ARM only. */
+    GRUB_FILE_TYPE_XEN_HYPERVISOR,
+    /* Xen module - used on ARM only. */
+    GRUB_FILE_TYPE_XEN_MODULE,
+
     GRUB_FILE_TYPE_BSD_KERNEL,
     GRUB_FILE_TYPE_FREEBSD_ENV,
     GRUB_FILE_TYPE_FREEBSD_MODULE,