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 f47b683..b390973 100644 --- a/grub2.changes +++ b/grub2.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +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 + +- convert spec file to UTF-8 + ------------------------------------------------------------------- Thu Mar 7 08:12:57 UTC 2013 - mchang@suse.com diff --git a/grub2.spec b/grub2.spec index a550e10..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 @@ -167,7 +168,7 @@ Authors: Yoshinori K. Okuji Colin Watson Colin D. Bennett - Vesa Jääskeläinen + Vesa Jääskeläinen Robert Millan Carles Pina @@ -205,7 +206,7 @@ Authors: Yoshinori K. Okuji Colin Watson Colin D. Bennett - Vesa Jääskeläinen + Vesa Jääskeläinen Robert Millan Carles Pina %endif @@ -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 \