Hello community,
here is the log from the commit of package grub2 for openSUSE:Factory checked in at 2013-04-05 07:44:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/grub2 (Old)
and /work/SRC/openSUSE:Factory/.grub2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "grub2", Maintainer is "MChang@suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/grub2/grub2.changes 2013-04-02 11:49:42.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.grub2.new/grub2.changes 2013-04-05 07:44:44.000000000 +0200
@@ -1,0 +2,6 @@
+Wed Apr 3 06:55:52 UTC 2013 - mchang@suse.com
+
+- refresh grub2-secureboot-chainloader.patch: Fix wrongly aligned
+ buffer address (bnc#811608)
+
+-------------------------------------------------------------------
@@ -13,0 +20,5 @@
+
+-------------------------------------------------------------------
+Sat Mar 23 18:31:07 UTC 2013 - arvidjaar@gmail.com
+
+- corretly set chainloaded image device handle in secure boot mode (bnc#809038)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ grub2.spec ++++++
--- /var/tmp/diff_new_pack.zeQKm8/_old 2013-04-05 07:44:51.000000000 +0200
+++ /var/tmp/diff_new_pack.zeQKm8/_new 2013-04-05 07:44:51.000000000 +0200
@@ -47,8 +47,8 @@
BuildRequires: xz-devel
%ifarch x86_64
%if 0%{?suse_version} >= 1230 || 0%{?suse_version} == 1110
-BuildRequires: pesign-obs-integration
BuildRequires: openssl >= 0.9.8
+BuildRequires: pesign-obs-integration
%endif
%endif
++++++ grub2-secureboot-chainloader.patch ++++++
--- /var/tmp/diff_new_pack.zeQKm8/_old 2013-04-05 07:44:51.000000000 +0200
+++ /var/tmp/diff_new_pack.zeQKm8/_new 2013-04-05 07:44:51.000000000 +0200
@@ -21,11 +21,11 @@
grub-core/loader/efi/chainloader.c | 538 +++++++++++++++++++++++++++++++++--
1 files changed, 507 insertions(+), 31 deletions(-)
-diff --git a/grub-core/loader/efi/chainloader.c b/grub-core/loader/efi/chainloader.c
-index 3f3e6e3..12e1aff 100644
---- a/grub-core/loader/efi/chainloader.c
-+++ b/grub-core/loader/efi/chainloader.c
-@@ -36,15 +36,30 @@
+Index: grub-2.00/grub-core/loader/efi/chainloader.c
+===================================================================
+--- grub-2.00.orig/grub-core/loader/efi/chainloader.c
++++ grub-2.00/grub-core/loader/efi/chainloader.c
+@@ -36,15 +36,31 @@
#include
#include
@@ -48,6 +48,7 @@
static grub_efi_handle_t image_handle;
static grub_efi_char16_t *cmdline;
+static grub_ssize_t cmdline_len;
++static grub_efi_handle_t dev_handle;
+
+#ifdef SUPPORT_SECURE_BOOT
+static grub_efi_boolean_t debug_secureboot = 0;
@@ -56,7 +57,15 @@
static grub_err_t
grub_chainloader_unload (void)
-@@ -186,12 +201,458 @@ make_file_path (grub_efi_device_path_t *dp, const char *filename)
+@@ -59,6 +75,7 @@ grub_chainloader_unload (void)
+ grub_free (cmdline);
+ cmdline = 0;
+ file_path = 0;
++ dev_handle = 0;
+
+ grub_dl_unref (my_mod);
+ return GRUB_ERR_NONE;
+@@ -186,19 +203,466 @@ make_file_path (grub_efi_device_path_t *
return file_path;
}
@@ -397,7 +406,7 @@
+ goto error_exit;
+ }
+
-+ buffer_aligned = (char *)ALIGN_DOWN ((grub_addr_t)buffer, section_alignment);
++ buffer_aligned = (char *)ALIGN_UP ((grub_addr_t)buffer, section_alignment);
+
+ grub_memcpy (buffer_aligned, data, context.size_of_headers);
+
@@ -456,6 +465,7 @@
+ li->load_options = cmdline;
+ li->load_options_size = cmdline_len;
+ li->file_path = grub_efi_get_media_file_path (file_path);
++ li->device_handle = dev_handle;
+ if (li->file_path)
+ {
+ grub_printf ("file path: ");
@@ -493,6 +503,7 @@
+ grub_free (cmdline);
+ cmdline = 0;
+ file_path = 0;
++ dev_handle = 0;
+
+ grub_dl_unref (my_mod);
+ return GRUB_ERR_NONE;
@@ -516,7 +527,18 @@
grub_efi_status_t status;
grub_efi_boot_services_t *b;
grub_device_t dev = 0;
-@@ -213,6 +674,32 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
+ grub_efi_device_path_t *dp = 0;
+ grub_efi_loaded_image_t *loaded_image;
+ char *filename;
+- grub_efi_handle_t dev_handle = 0;
+
+ if (argc == 0)
+ return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected"));
+@@ -210,9 +674,36 @@ grub_cmd_chainloader (grub_command_t cmd
+ address = 0;
+ image_handle = 0;
+ file_path = 0;
++ dev_handle = 0;
b = grub_efi_system_table->boot_services;
@@ -549,7 +571,7 @@
file = grub_file_open (filename);
if (! file)
goto fail;
-@@ -258,14 +745,14 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
+@@ -258,14 +749,14 @@ grub_cmd_chainloader (grub_command_t cmd
grub_printf ("file path: ");
grub_efi_print_device_path (file_path);
@@ -567,7 +589,7 @@
status = efi_call_4 (b->allocate_pages, GRUB_EFI_ALLOCATE_ANY_PAGES,
GRUB_EFI_LOADER_CODE,
-@@ -278,7 +765,7 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
+@@ -278,7 +769,7 @@ grub_cmd_chainloader (grub_command_t cmd
goto fail;
}
@@ -576,7 +598,7 @@
{
if (grub_errno == GRUB_ERR_NONE)
grub_error (GRUB_ERR_BAD_OS, N_("premature end of file %s"),
-@@ -287,8 +774,17 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
+@@ -287,8 +778,17 @@ grub_cmd_chainloader (grub_command_t cmd
goto fail;
}
@@ -595,7 +617,7 @@
&image_handle);
if (status != GRUB_EFI_SUCCESS)
{
-@@ -313,33 +809,10 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
+@@ -313,33 +813,10 @@ grub_cmd_chainloader (grub_command_t cmd
grub_file_close (file);
@@ -631,7 +653,7 @@
}
grub_loader_set (grub_chainloader_boot, grub_chainloader_unload, 0);
-@@ -358,6 +831,9 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
+@@ -358,6 +835,9 @@ grub_cmd_chainloader (grub_command_t cmd
if (address)
efi_call_2 (b->free_pages, address, pages);
@@ -641,6 +663,3 @@
grub_dl_unref (my_mod);
return grub_errno;
---
-1.7.3.4
-
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org