[packages/grub2] Fix for PXE boot 'timeout reading' error

jajcus jajcus at pld-linux.org
Sun Oct 28 10:54:38 CET 2012


commit 55de8afc7d5e2756d9ecc9fd5f8432b4080991b0
Author: Jacek Konieczny <jajcus at jajcus.net>
Date:   Sun Oct 28 10:53:52 2012 +0100

    Fix for PXE boot 'timeout reading' error

 grub2-tftp_fix.patch | 36 ++++++++++++++++++++++++++++++++++++
 grub2.spec           |  2 ++
 2 files changed, 38 insertions(+)
---
diff --git a/grub2.spec b/grub2.spec
index 7896afb..ee14fd7 100644
--- a/grub2.spec
+++ b/grub2.spec
@@ -65,6 +65,7 @@ Patch7:		%{name}-awk.patch
 Patch8:		posix.patch
 Patch9:		%{name}-gets.patch
 Patch10:	%{name}-fonts_path.patch
+Patch11:	%{name}-tftp_fix.patch
 BuildRequires:	autoconf >= 2.53
 BuildRequires:	automake >= 1:1.11.1-1
 BuildRequires:	bison
@@ -253,6 +254,7 @@ starfield theme for GRUB.
 %patch8 -p1
 %patch9 -p1
 %patch10 -p1
+%patch11 -p1
 
 %if "%{cc_version}" < "3.4"
 grep -rl -- -Wno-missing-field-initializers . | xargs %{__sed} -i -e 's,-Wno-missing-field-initializers,,'
diff --git a/grub2-tftp_fix.patch b/grub2-tftp_fix.patch
new file mode 100644
index 0000000..397a0d7
--- /dev/null
+++ b/grub2-tftp_fix.patch
@@ -0,0 +1,36 @@
+http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/4548
+
+diff -dur grub-2.00.orig/ChangeLog grub-2.00/ChangeLog
+--- grub-2.00.orig/ChangeLog	2012-06-28 02:06:26.000000000 +0200
++++ grub-2.00/ChangeLog	2012-10-28 10:52:48.619830487 +0100
+@@ -1,3 +1,9 @@
++2012-07-02  Vladimir Serbinenko  <phcoder at gmail.com>
++
++	* grub-core/net/tftp.c (ack): Fix endianness problem.
++	(tftp_receive): Likewise.
++	Reported by: Michael Davidsaver.
++
+ 2012-06-27  Vladimir Serbinenko  <phcoder at gmail.com>
+ 
+ 	* configure.ac: Bump version to 2.00.
+diff -dur grub-2.00.orig/grub-core/net/tftp.c grub-2.00/grub-core/net/tftp.c
+--- grub-2.00.orig/grub-core/net/tftp.c	2012-06-22 17:42:07.000000000 +0200
++++ grub-2.00/grub-core/net/tftp.c	2012-10-28 10:52:11.463407895 +0100
+@@ -143,7 +143,7 @@
+ 
+   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 @@
+ 	    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;
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/grub2.git/commitdiff/55de8afc7d5e2756d9ecc9fd5f8432b4080991b0



More information about the pld-cvs-commit mailing list