Class DyldCacheUtils.SplitDyldCache

java.lang.Object
ghidra.app.util.opinion.DyldCacheUtils.SplitDyldCache
All Implemented Interfaces:
Closeable, AutoCloseable
Enclosing class:
DyldCacheUtils

public static class DyldCacheUtils.SplitDyldCache extends Object implements Closeable
Class to store a "split" DYLD Cache, which is split across several subcache files (base file, .1, .2, .symbols, etc).
  • Constructor Details

  • Method Details

    • getProvider

      public ByteProvider getProvider(int i)
      Gets the i'th ByteProvider in the split DYLD Cache
      Parameters:
      i - The index of the ByteProvider to get
      Returns:
      The i'th ByteProvider in the split DYLD Cache
    • getDyldCacheHeader

      public DyldCacheHeader getDyldCacheHeader(int i)
      Gets the i'th DyldCacheHeader in the split DYLD Cache
      Parameters:
      i - The index of the DyldCacheHeader to get
      Returns:
      The i'th DyldCacheHeader in the split DYLD Cache
    • getName

      public String getName(int i)
      Gets the i'th name in the split DYLD Cache
      Parameters:
      i - The index of the name to get
      Returns:
      The i'th name in the split DYLD Cache
    • size

      public int size()
      Gets the number of split DYLD Cache files
      Returns:
      The number of split DYLD Cache files
    • getBaseAddress

      public long getBaseAddress()
      Gets the base address of the split DYLD cache. This is where the cache should be loaded in memory.
      Returns:
      The base address of the split DYLD cache
    • getLocalSymbolInfo

      public DyldCacheLocalSymbolsInfo getLocalSymbolInfo()
      Gets the DyldCacheLocalSymbolsInfo from the split DYLD Cache files
      Returns:
      The DyldCacheLocalSymbolsInfo from the split DYLD Cache files, or null if no local symbols are defined
    • close

      public void close() throws IOException
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Throws:
      IOException