示例#1
0
    def load_symbols_at(self, addr, verbose=False):
        if self.DebugInfos == []:
            self.get_debug_info()

        found = False
        for debug_info in self.DebugInfos:
            if (addr >= debug_info[0]) and (addr <
                                            debug_info[0] + debug_info[1]):
                if edk2_debugger.is_aarch64(self.ec):
                    section = firmware_volume.EfiSectionPE64(
                        self.ec, debug_info[0])
                else:
                    section = firmware_volume.EfiSectionPE32(
                        self.ec, debug_info[0])

                try:
                    edk2_debugger.load_symbol_from_file(
                        self.ec, section.get_debug_filepath(),
                        section.get_debug_elfbase(), verbose)
                except Exception, (ErrorClass, ErrorMessage):
                    if verbose:
                        print "Error while loading a symbol file (%s: %s)" % (
                            ErrorClass, ErrorMessage)

                found = True
                return debug_info
示例#2
0
 def dump(self):
     self.get_debug_info()
     for debug_info in self.DebugInfos:
         base_pe32 = debug_info[0]
         if edk2_debugger.is_aarch64(self.ec):
             section = firmware_volume.EfiSectionPE64(self.ec, base_pe32)
         else:
             section = firmware_volume.EfiSectionPE32(self.ec, base_pe32)
         print section.get_debug_filepath()
示例#3
0
    def load_all_symbols(self, verbose=False):
        if self.DebugInfos == []:
            self.get_debug_info()

        for debug_info in self.DebugInfos:
            section = firmware_volume.EfiSectionPE32(self.ec, debug_info[0])

            try:
                edk2_debugger.load_symbol_from_file(
                    self.ec, section.get_debug_filepath(),
                    section.get_debug_elfbase(), verbose)
            except Exception, (ErrorClass, ErrorMessage):
                if verbose:
                    print "Error while loading a symbol file (%s: %s)" % (
                        ErrorClass, ErrorMessage)
                pass
示例#4
0
 def dump(self):
     self.get_debug_info()
     for debug_info in self.DebugInfos:
         base_pe32 = debug_info[0]
         section = firmware_volume.EfiSectionPE32(self.ec, base_pe32)
         print section.get_debug_filepath()