From 4a27c23e24a140b771ae834442692e5b72ebc1f94c7d454804e605d2065cf081 Mon Sep 17 00:00:00 2001 From: Jiri Slaby Date: Mon, 11 Mar 2013 09:53:51 +0000 Subject: [PATCH] Accepting request 158250 from home:michael-chang:branches:Base:System - add grub2-fix-tftp-endianness.patch from upstream (bnc#808582) - add efinet and tftp to grub.efi (bnc#808582) OBS-URL: https://build.opensuse.org/request/show/158250 OBS-URL: https://build.opensuse.org/package/show/Base:System/grub2?expand=0&rev=25 --- grub2-fix-tftp-endianness.patch | 38 +++++++++++++++++++++++++++++++++ grub2.changes | 6 ++++++ grub2.spec | 5 ++++- 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 grub2-fix-tftp-endianness.patch diff --git a/grub2-fix-tftp-endianness.patch b/grub2-fix-tftp-endianness.patch new file mode 100644 index 0000000..bffb4a5 --- /dev/null +++ b/grub2-fix-tftp-endianness.patch @@ -0,0 +1,38 @@ +From: Vladimir Serbinenko +Subject: grub-core/net/tftp.c: fix endianness problem. + +* grub-core/net/tftp.c (ack): Fix endianness problem. +(tftp_receive): Likewise. + +Reported by: Michael Davidsave + +Signed-off-by: Michael Chang +--- + grub-core/net/tftp.c | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/grub-core/net/tftp.c b/grub-core/net/tftp.c +index 9c70efb..d0f39ea 100644 +--- a/grub-core/net/tftp.c ++++ b/grub-core/net/tftp.c +@@ -143,7 +143,7 @@ ack (tftp_data_t data, grub_uint16_t block) + + tftph_ack = (struct tftphdr *) nb_ack.data; + tftph_ack->opcode = grub_cpu_to_be16 (TFTP_ACK); +- tftph_ack->u.ack.block = block; ++ tftph_ack->u.ack.block = grub_cpu_to_be16 (block); + + err = grub_net_send_udp_packet (data->sock, &nb_ack); + if (err) +@@ -225,7 +225,7 @@ tftp_receive (grub_net_udp_socket_t sock __attribute__ ((unused)), + grub_priority_queue_pop (data->pq); + + if (file->device->net->packs.count < 50) +- err = ack (data, tftph->u.data.block); ++ err = ack (data, data->block + 1); + else + { + file->device->net->stall = 1; +-- +1.7.3.4 + diff --git a/grub2.changes b/grub2.changes index daf5e36..b390973 100644 --- a/grub2.changes +++ b/grub2.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Mar 11 06:52:58 UTC 2013 - mchang@suse.com + +- add grub2-fix-tftp-endianness.patch from upstream (bnc#808582) +- add efinet and tftp to grub.efi (bnc#808582) + ------------------------------------------------------------------- Thu Mar 7 15:39:50 UTC 2013 - seife+obs@b1-systems.com diff --git a/grub2.spec b/grub2.spec index ced71f3..1c64493 100644 --- a/grub2.spec +++ b/grub2.spec @@ -134,6 +134,7 @@ Patch29: grub2-secureboot-chainloader.patch Patch30: grub2-cdpath.patch Patch31: efidisk-ahci-workaround Patch32: grub2-grub-mount-return-failure-if-FUSE-failed.patch +Patch33: grub2-fix-tftp-endianness.patch PreReq: perl-Bootloader Requires: gettext-runtime %if 0%{?suse_version} >= 1140 @@ -270,6 +271,7 @@ mv docs/grub.texi docs/grub2.texi %patch30 -p1 %patch31 -p1 %patch32 -p1 +%patch33 -p1 # README.openSUSE cp %{SOURCE3} . @@ -313,6 +315,7 @@ CD_MODULES=" all_video boot cat chain configfile echo \ jpeg minicmd normal part_apple part_msdos part_gpt \ password_pbkdf2 png reboot search search_fs_uuid \ search_fs_file search_label sleep test video fat loadenv" +PXE_MODULES="efinet tftp" %ifarch x86_64 CD_MODULES="${CD_MODULES} linuxefi" @@ -320,7 +323,7 @@ CD_MODULES="${CD_MODULES} linuxefi" CD_MODULES="${CD_MODULES} linux" %endif -GRUB_MODULES="${CD_MODULES} ${FS_MODULES} mdraid09 mdraid1x lvm" +GRUB_MODULES="${CD_MODULES} ${FS_MODULES} ${PXE_MODULES} mdraid09 mdraid1x lvm" ./grub-mkimage -O %{grubefiarch} -o grub.efi --prefix= \ -d grub-core ${GRUB_MODULES} #./grub-mkimage -O %{grubefiarch} -o grub.efi -d grub-core part_gpt hfsplus fat \