rpms/grub/devel grub-0.97-efipxe.patch,1.2,1.3 grub.spec,1.89,1.90

Peter Jones pjones at fedoraproject.org
Mon Apr 6 15:13:28 UTC 2009


Author: pjones

Update of /cvs/extras/rpms/grub/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv21829

Modified Files:
	grub-0.97-efipxe.patch grub.spec 
Log Message:
* Mon Apr 06 2009 Peter Jones <pjones at redhat.com> - 0.97-46
- Update gnu-efi buildreq.
- Fix up pxe code for i386


grub-0.97-efipxe.patch:

Index: grub-0.97-efipxe.patch
===================================================================
RCS file: /cvs/extras/rpms/grub/devel/grub-0.97-efipxe.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- grub-0.97-efipxe.patch	3 Apr 2009 19:10:52 -0000	1.2
+++ grub-0.97-efipxe.patch	6 Apr 2009 15:13:28 -0000	1.3
@@ -1,27 +1,27 @@
-From 379129c619281449e4c441a932080c68b57f0ab8 Mon Sep 17 00:00:00 2001
+From cc3b0e11c8322c2c4f81e9964301157cfbcfdf16 Mon Sep 17 00:00:00 2001
 From: Peter Jones <pjones at redhat.com>
 Date: Tue, 31 Mar 2009 14:55:00 +0500
 Subject: [PATCH] add basic pxe boot support in efi
 
 ---
  efi/Makefile.am    |    2 +-
- efi/byteswap.h     |   37 +++++
+ efi/byteswap.h     |   37 ++++
  efi/dhcp.h         |  133 +++++++++++++++
  efi/eficore.c      |   12 ++
  efi/efimain.c      |   41 ++++--
  efi/efimisc.c      |   14 +-
  efi/efitftp.c      |  182 +++++++++++++++++++++
  efi/grub/efi/efi.h |    6 +
- efi/pxe.c          |  456 ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ efi/pxe.c          |  462 ++++++++++++++++++++++++++++++++++++++++++++++++++++
  efi/pxe.h          |  237 +++++++++++++++++++++++++++
  grub/Makefile.am   |    2 +-
- grub/efitftp.c     |   29 ++++
+ grub/efitftp.c     |   34 ++++
  stage2/Makefile.am |    4 +-
  stage2/disk_io.c   |   17 ++-
- stage2/efistubs.c  |    9 +
+ stage2/efistubs.c  |    7 +
  stage2/efistubs.h  |    8 +
  stage2/filesys.h   |   13 ++-
- 17 files changed, 1176 insertions(+), 26 deletions(-)
+ 17 files changed, 1185 insertions(+), 26 deletions(-)
  create mode 100644 efi/byteswap.h
  create mode 100644 efi/dhcp.h
  create mode 100644 efi/efitftp.c
@@ -343,7 +343,7 @@
    path_name_len = dir_end + 1 - path_name;
 diff --git a/efi/efitftp.c b/efi/efitftp.c
 new file mode 100644
-index 0000000..9138165
+index 0000000..9f207e3
 --- /dev/null
 +++ b/efi/efitftp.c
 @@ -0,0 +1,182 @@
@@ -413,7 +413,7 @@
 +static grub_efi_status_t tftp_read_file(
 +	char *Filename,
 +	char *Buffer,
-+	grub_efi_uintn_t BufferSize)
++	grub_efi_uint64_t BufferSize)
 +{
 +	EFI_PXE_BASE_CODE_TFTP_OPCODE OpCode = EFI_PXE_BASE_CODE_TFTP_READ_FILE;
 +	grub_efi_boolean_t Overwrite = 0;
@@ -548,10 +548,10 @@
  grub_efi_handle_t *grub_efi_locate_handle (grub_efi_locate_search_type_t
 diff --git a/efi/pxe.c b/efi/pxe.c
 new file mode 100644
-index 0000000..375f47d
+index 0000000..b38b95a
 --- /dev/null
 +++ b/efi/pxe.c
-@@ -0,0 +1,456 @@
+@@ -0,0 +1,462 @@
 +
 +#include <grub/efi/efi.h>
 +#include <grub/efi/api.h>
@@ -593,8 +593,10 @@
 +static void dhcp_option_parser_reset(dhcp_option_parser *parser,
 +				EFI_PXE_BASE_CODE_PACKET *packet)
 +{
-+	grub_uint64_t addr = (grub_uint64_t)packet;
++	char *addr;
++	//grub_uint64_t addr = (grub_uint64_t)(void *)packet;
 +
++	addr = (char *)packet;
 +	addr += offsetof(EFI_PXE_BASE_CODE_DHCPV4_PACKET, DhcpOptions);
 +	parser->current_option = (void *)addr;
 +	parser->options = (void *)addr;
@@ -603,11 +605,15 @@
 +static int dhcp_option_parser_next(dhcp_option_parser *parser,
 +				EFI_DHCP4_PACKET_OPTION **option)
 +{
++	char *current_option;
 +	if (parser->current_option->OpCode == 255) {
 +		*option = NULL;
 +		return 0;
 +	}
-+	parser->current_option = (void *)((grub_uint64_t)parser->current_option + 2 + parser->current_option->Length);
++	current_option = (char *)parser->current_option;
++	current_option += 2 + parser->current_option->Length;
++	parser->current_option = (EFI_DHCP4_PACKET_OPTION *)current_option;
++
 +	*option = parser->current_option;
 +	return 1;
 +}
@@ -967,7 +973,7 @@
 +	char *FileName = NULL;
 +	EFI_PXE_BASE_CODE_DHCPV4_PACKET *packet;
 +	uuid_t uuid;
-+	size_t FileSize = 0;
++	grub_efi_uintn_t FileSize = 0;
 +	grub_efi_status_t rc = GRUB_EFI_SUCCESS;
 +	char *ConfigPath = NULL;
 +
@@ -1264,7 +1270,7 @@
  grub_LDADD = ../stage2/libgrub.a  ../lib/libcommon.a $(GRUB_LIBS)
 diff --git a/grub/efitftp.c b/grub/efitftp.c
 new file mode 100644
-index 0000000..383c451
+index 0000000..5355dec
 --- /dev/null
 +++ b/grub/efitftp.c
 @@ -0,0 +1,34 @@
@@ -1395,7 +1401,7 @@
  		  && (!ptr
 diff --git a/stage2/efistubs.c b/stage2/efistubs.c
 new file mode 100644
-index 0000000..79db331
+index 0000000..29b086a
 --- /dev/null
 +++ b/stage2/efistubs.c
 @@ -0,0 +1,7 @@
@@ -1452,5 +1458,5 @@
  
  /* defines for the block filesystem info area */
 -- 
-1.6.2
+1.6.2.2
 


Index: grub.spec
===================================================================
RCS file: /cvs/extras/rpms/grub/devel/grub.spec,v
retrieving revision 1.89
retrieving revision 1.90
diff -u -r1.89 -r1.90
--- grub.spec	3 Apr 2009 18:34:11 -0000	1.89
+++ grub.spec	6 Apr 2009 15:13:28 -0000	1.90
@@ -1,6 +1,6 @@
 Name: grub
 Version: 0.97
-Release: 45%{?dist}
+Release: 46%{?dist}
 Summary: Grand Unified Boot Loader.
 Group: System Environment/Base
 License: GPLv2+
@@ -8,7 +8,7 @@
 ExclusiveArch: i586 x86_64 ia64
 BuildRequires: binutils >= 2.9.1.0.23, ncurses-devel, ncurses-static, texinfo
 BuildRequires: autoconf /usr/lib/crt1.o automake
-BuildRequires: gnu-efi >= 3.0e-5
+BuildRequires: gnu-efi >= 3.0e-7
 BuildRequires: glibc-static
 Requires(post): /sbin/install-info
 Requires(preun): /sbin/install-info
@@ -36,7 +36,8 @@
 Patch8: grub-0.97-xfs-buildfix.patch
 Patch9: grub-0.97-efigraph-use-blt.patch
 Patch10: grub-0.97-efislice.patch
-Patch11: grub-0.97-efipxe.patch
+Patch11: grub-0.97-efistatus.patch
+Patch12: grub-0.97-efipxe.patch
 
 %description
 GRUB (Grand Unified Boot Loader) is an experimental boot loader
@@ -58,6 +59,7 @@
 %patch9 -p1
 %patch10 -p1
 %patch11 -p1
+%patch12 -p1
 
 %build
 autoreconf
@@ -120,6 +122,10 @@
 %{_datadir}/grub
 
 %changelog
+* Mon Apr 06 2009 Peter Jones <pjones at redhat.com> - 0.97-46
+- Update gnu-efi buildreq.
+- Fix up pxe code for i386
+
 * Fri Apr 03 2009 Peter Jones <pjones at redhat.com> - 0.97-45
 - Add very basic PXE support for EFI.
 




More information about the fedora-extras-commits mailing list