Explorar el Código

multiboot2: EFIImageHandle{32,64} => EFIImageHandle{32,64}Tag

Philipp Schuster hace 1 año
padre
commit
c9d92b6f04
Se han modificado 4 ficheros con 32 adiciones y 26 borrados
  1. 4 0
      multiboot2/Changelog.md
  2. 5 5
      multiboot2/src/builder/information.rs
  3. 13 11
      multiboot2/src/efi.rs
  4. 10 10
      multiboot2/src/lib.rs

+ 4 - 0
multiboot2/Changelog.md

@@ -17,7 +17,11 @@
 - **BREAKING** Removed `MemoryAreaIter` and `MemoryMapTag::available_memory_areas`
 - Added `MemoryMapTag::entry_size` and `MemoryMapTag::entry_version`
 - **BREAKING** Renamed `BootInformation::load_base_addr` to `BootInformation::load_base_addr_tag`
+- **BREAKING** Renamed `BootInformation::efi_32_ih` to `BootInformation::efi_32_ih_tag`
+- **BREAKING** Renamed `BootInformation::efi_32_ih` to `BootInformation::efi_32_ih_tag`
 - **BREAKING** Renamed `ImageLoadPhysAddr` to `ImageLoadPhysAddrTag`
+- **BREAKING** Renamed `EFIImageHandle32` to `EFIImageHandle32Tag`
+- **BREAKING** Renamed `EFIImageHandle64` to `EFIImageHandle64Tag`
 
 ## 0.15.1 (2023-03-18)
 - **BREAKING** `MemoryMapTag::all_memory_areas()` was renamed to `memory_areas`

+ 5 - 5
multiboot2/src/builder/information.rs

@@ -2,7 +2,7 @@
 use crate::builder::traits::StructAsBytes;
 use crate::{
     BasicMemoryInfoTag, BootInformationInner, BootLoaderNameTag, CommandLineTag,
-    EFIBootServicesNotExited, EFIImageHandle32, EFIImageHandle64, EFIMemoryMapTag, EFISdt32,
+    EFIBootServicesNotExited, EFIImageHandle32Tag, EFIImageHandle64Tag, EFIMemoryMapTag, EFISdt32,
     EFISdt64, ElfSectionsTag, EndTag, FramebufferTag, ImageLoadPhysAddrTag, MemoryMapTag,
     ModuleTag, RsdpV1Tag, RsdpV2Tag, SmbiosTag,
 };
@@ -20,8 +20,8 @@ pub struct InformationBuilder {
     boot_loader_name_tag: Option<Box<BootLoaderNameTag>>,
     command_line_tag: Option<Box<CommandLineTag>>,
     efi_boot_services_not_exited: Option<EFIBootServicesNotExited>,
-    efi_image_handle32: Option<EFIImageHandle32>,
-    efi_image_handle64: Option<EFIImageHandle64>,
+    efi_image_handle32: Option<EFIImageHandle32Tag>,
+    efi_image_handle64: Option<EFIImageHandle64Tag>,
     efi_memory_map_tag: Option<Box<EFIMemoryMapTag>>,
     elf_sections_tag: Option<Box<ElfSectionsTag>>,
     framebuffer_tag: Option<Box<FramebufferTag>>,
@@ -241,11 +241,11 @@ impl InformationBuilder {
         self.efi_boot_services_not_exited = Some(EFIBootServicesNotExited::new());
     }
 
-    pub fn efi_image_handle32(&mut self, efi_image_handle32: EFIImageHandle32) {
+    pub fn efi_image_handle32(&mut self, efi_image_handle32: EFIImageHandle32Tag) {
         self.efi_image_handle32 = Some(efi_image_handle32);
     }
 
-    pub fn efi_image_handle64(&mut self, efi_image_handle64: EFIImageHandle64) {
+    pub fn efi_image_handle64(&mut self, efi_image_handle64: EFIImageHandle64Tag) {
         self.efi_image_handle64 = Some(efi_image_handle64);
     }
 

+ 13 - 11
multiboot2/src/efi.rs

@@ -72,16 +72,17 @@ impl StructAsBytes for EFISdt64 {
     }
 }
 
-/// Contains pointer to boot loader image handle.
+/// Tag that contains the pointer to the boot loader's UEFI image handle
+/// (32-bit).
 #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
 #[repr(C)]
-pub struct EFIImageHandle32 {
+pub struct EFIImageHandle32Tag {
     typ: TagTypeId,
     size: u32,
     pointer: u32,
 }
 
-impl EFIImageHandle32 {
+impl EFIImageHandle32Tag {
     #[cfg(feature = "builder")]
     pub fn new(pointer: u32) -> Self {
         Self {
@@ -98,22 +99,23 @@ impl EFIImageHandle32 {
 }
 
 #[cfg(feature = "builder")]
-impl StructAsBytes for EFIImageHandle32 {
+impl StructAsBytes for EFIImageHandle32Tag {
     fn byte_size(&self) -> usize {
         size_of::<Self>()
     }
 }
 
-/// Contains pointer to boot loader image handle.
+/// Tag that contains the pointer to the boot loader's UEFI image handle
+/// (64-bit).
 #[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
 #[repr(C)]
-pub struct EFIImageHandle64 {
+pub struct EFIImageHandle64Tag {
     typ: TagTypeId,
     size: u32,
     pointer: u64,
 }
 
-impl EFIImageHandle64 {
+impl EFIImageHandle64Tag {
     #[cfg(feature = "builder")]
     pub fn new(pointer: u64) -> Self {
         Self {
@@ -130,7 +132,7 @@ impl EFIImageHandle64 {
 }
 
 #[cfg(feature = "builder")]
-impl StructAsBytes for EFIImageHandle64 {
+impl StructAsBytes for EFIImageHandle64Tag {
     fn byte_size(&self) -> usize {
         size_of::<Self>()
     }
@@ -138,7 +140,7 @@ impl StructAsBytes for EFIImageHandle64 {
 
 #[cfg(all(test, feature = "builder"))]
 mod tests {
-    use super::{EFIImageHandle32, EFIImageHandle64, EFISdt32, EFISdt64};
+    use super::{EFIImageHandle32Tag, EFIImageHandle64Tag, EFISdt32, EFISdt64};
 
     const ADDR: usize = 0xABCDEF;
 
@@ -156,13 +158,13 @@ mod tests {
 
     #[test]
     fn test_build_eftih32() {
-        let tag = EFIImageHandle32::new(ADDR.try_into().unwrap());
+        let tag = EFIImageHandle32Tag::new(ADDR.try_into().unwrap());
         assert_eq!(tag.image_handle(), ADDR);
     }
 
     #[test]
     fn test_build_eftih64() {
-        let tag = EFIImageHandle64::new(ADDR.try_into().unwrap());
+        let tag = EFIImageHandle64Tag::new(ADDR.try_into().unwrap());
         assert_eq!(tag.image_handle(), ADDR);
     }
 }

+ 10 - 10
multiboot2/src/lib.rs

@@ -50,7 +50,7 @@ pub use boot_loader_name::BootLoaderNameTag;
 #[cfg(feature = "builder")]
 use builder::traits::StructAsBytes;
 pub use command_line::CommandLineTag;
-pub use efi::{EFIImageHandle32, EFIImageHandle64, EFISdt32, EFISdt64};
+pub use efi::{EFIImageHandle32Tag, EFIImageHandle64Tag, EFISdt32, EFISdt64};
 pub use elf_sections::{
     ElfSection, ElfSectionFlags, ElfSectionIter, ElfSectionType, ElfSectionsTag,
 };
@@ -336,13 +336,13 @@ impl BootInformation {
     }
 
     /// Search for the EFI 32-bit image handle pointer tag.
-    pub fn efi_32_ih(&self) -> Option<&EFIImageHandle32> {
-        self.get_tag::<EFIImageHandle32, _>(TagType::Efi32Ih)
+    pub fn efi_32_ih_tag(&self) -> Option<&EFIImageHandle32Tag> {
+        self.get_tag::<EFIImageHandle32Tag, _>(TagType::Efi32Ih)
     }
 
     /// Search for the EFI 64-bit image handle pointer tag.
-    pub fn efi_64_ih(&self) -> Option<&EFIImageHandle64> {
-        self.get_tag::<EFIImageHandle64, _>(TagType::Efi64Ih)
+    pub fn efi_64_ih_tag(&self) -> Option<&EFIImageHandle64Tag> {
+        self.get_tag::<EFIImageHandle64Tag, _>(TagType::Efi64Ih)
     }
 
     /// Search for the Image Load Base Physical Address tag.
@@ -374,7 +374,7 @@ impl BootInformation {
     /// However, it doesn't forbid to use custom tags. Because of this, there
     /// exists the [`TagType`] abstraction. It is recommended to use this
     /// getter only for custom tags. For specified tags, use getters, such as
-    /// [`Self::efi_64_ih`].
+    /// [`Self::efi_64_ih_tag`].
     ///
     /// ## Use Custom Tags
     /// The following example shows how you may use this interface to parse
@@ -493,11 +493,11 @@ impl fmt::Debug for BootInformation {
         }
 
         debug
-            .field("efi_32_ih", &self.efi_32_ih())
-            .field("efi_64_ih", &self.efi_64_ih())
+            .field("efi_32_ih", &self.efi_32_ih_tag())
+            .field("efi_64_ih", &self.efi_64_ih_tag())
             .field("efi_sdt_32_tag", &self.efi_sdt_32_tag())
-            .field("efi_sdt_64_tag", &self.efi_sdt_64())
-            .field("efi_memory_map_tag", &self.efi_memory_map())
+            .field("efi_sdt_64_tag", &self.efi_sdt_64_tag())
+            .field("efi_memory_map_tag", &self.efi_memory_map_tag())
             .finish()
     }
 }