Class DyldCacheProgramBuilder


  • public class DyldCacheProgramBuilder
    extends MachoProgramBuilder
    Builds up a DYLD Cache Program by parsing the DYLD Cache headers.
    • Constructor Detail

      • DyldCacheProgramBuilder

        protected DyldCacheProgramBuilder​(Program program,
                                          ByteProvider provider,
                                          FileBytes fileBytes,
                                          boolean shouldProcessSymbols,
                                          boolean shouldCreateDylibSections,
                                          boolean shouldAddRelocationEntries,
                                          boolean shouldCombineSplitFiles,
                                          MessageLog log,
                                          TaskMonitor monitor)
        Creates a new DyldCacheProgramBuilder based on the given information.
        Parameters:
        program - The Program to build up
        provider - The ByteProvider that contains the DYLD Cache bytes
        fileBytes - Where the DYLD Cache's bytes came from
        shouldProcessSymbols - True if symbols should be processed; otherwise, false
        shouldCreateDylibSections - True if memory blocks should be created for DYLIB sections; otherwise, false
        shouldAddRelocationEntries - True to create a relocation entry for each fixed up pointer in pointer chain
        shouldCombineSplitFiles - True if split DYLD Cache files should be automatically imported and combined into 1 program; otherwise, false
        log - The log
        monitor - A cancelable task monitor
    • Method Detail

      • buildProgram

        public static void buildProgram​(Program program,
                                        ByteProvider provider,
                                        FileBytes fileBytes,
                                        boolean shouldProcessSymbols,
                                        boolean shouldCreateDylibSections,
                                        boolean addRelocationEntries,
                                        boolean shouldCombineSplitFiles,
                                        MessageLog log,
                                        TaskMonitor monitor)
                                 throws java.lang.Exception
        Builds up a DYLD Cache Program.
        Parameters:
        program - The Program to build up
        provider - The ByteProvider that contains the DYLD Cache's bytes
        fileBytes - Where the Mach-O's bytes came from
        shouldProcessSymbols - True if symbols should be processed; otherwise, false
        shouldCreateDylibSections - True if memory blocks should be created for DYLIB sections; otherwise, false
        addRelocationEntries - True to create a relocation entry for each fixed up pointer in pointer chain; otherwise, false
        shouldCombineSplitFiles - True if split DYLD Cache files should be automatically imported and combined into 1 program; otherwise, false
        log - The log
        monitor - A cancelable task monitor
        Throws:
        java.lang.Exception - if a problem occurs
      • build

        protected void build()
                      throws java.lang.Exception
        Overrides:
        build in class MachoProgramBuilder
        Throws:
        java.lang.Exception