Class DyldCacheSlideInfo3

java.lang.Object
ghidra.app.util.bin.format.macho.dyld.DyldCacheSlideInfoCommon
ghidra.app.util.bin.format.macho.dyld.DyldCacheSlideInfo3
All Implemented Interfaces:
StructConverter

public class DyldCacheSlideInfo3 extends DyldCacheSlideInfoCommon
Represents a dyld_cache_slide_info3 structure.

Seen in iOS 12 and later.

  • Constructor Details

    • DyldCacheSlideInfo3

      public DyldCacheSlideInfo3(BinaryReader reader, long mappingAddress, long mappingSize, long mappingFileOffset) throws IOException
      Create a new DyldCacheSlideInfo3.
      Parameters:
      reader - A BinaryReader positioned at the start of a DYLD slide info 3
      mappingAddress - The base address of where the slide fixups will take place
      mappingSize - The size of the slide fixups block
      mappingFileOffset - The base file offset of where the slide fixups will take place
      Throws:
      IOException - if there was an IO-related problem creating the DYLD slide info 3
  • Method Details

    • getPageSize

      public int getPageSize()
      Returns The page size.
      Returns:
      The page size
    • getPageStartsCount

      public int getPageStartsCount()
      Returns The page starts count.
      Returns:
      The page starts count
    • getAuthValueAdd

      public long getAuthValueAdd()
      Returns The "auth value add".
      Returns:
      The "auth value add"
    • getPageStarts

      public short[] getPageStarts()
      Returns The page starts array.
      Returns:
      The page starts array
    • getSlideFixups

      public List<DyldFixup> getSlideFixups(BinaryReader reader, int pointerSize, MessageLog log, TaskMonitor monitor) throws IOException, CancelledException
      Description copied from class: DyldCacheSlideInfoCommon
      Walks the slide fixup information and collects a List of DyldFixups that will need to be applied to the image
      Specified by:
      getSlideFixups in class DyldCacheSlideInfoCommon
      Parameters:
      reader - A BinaryReader positioned at the start of the segment to fix up
      pointerSize - The size of a pointer in bytes
      log - The log
      monitor - A cancellable monitor
      Returns:
      A List of DyldFixups
      Throws:
      IOException - If there was an IO-related issue
      CancelledException - If the user cancelled the operation
    • toDataType

      public DataType toDataType() throws DuplicateNameException, IOException
      Description copied from interface: StructConverter
      Returns a structure datatype representing the contents of the implementor of this interface.

      For example, given:

       class A {
           int foo;
           double bar;
       }
       

      The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments.

      Specified by:
      toDataType in interface StructConverter
      Overrides:
      toDataType in class DyldCacheSlideInfoCommon
      Returns:
      returns a structure datatype representing the implementor of this interface
      Throws:
      DuplicateNameException - when a datatype of the same name already exists
      IOException
      See Also: