@type bShowNotes: bool @param bShowNotes: C{True} to show the user notes, C{False} otherwise. @rtype: str @return: Long description of the event.
(self, bShowNotes=True)
| 1013 | return msg |
| 1014 | |
| 1015 | def fullReport(self, bShowNotes=True): |
| 1016 | """ |
| 1017 | @type bShowNotes: bool |
| 1018 | @param bShowNotes: C{True} to show the user notes, C{False} otherwise. |
| 1019 | |
| 1020 | @rtype: str |
| 1021 | @return: Long description of the event. |
| 1022 | """ |
| 1023 | msg = self.briefReport() |
| 1024 | msg += "\n" |
| 1025 | |
| 1026 | if self.bits == 32: |
| 1027 | width = 16 |
| 1028 | else: |
| 1029 | width = 8 |
| 1030 | |
| 1031 | if self.eventCode == win32.EXCEPTION_DEBUG_EVENT: |
| 1032 | (exploitability, expcode, expdescription) = self.isExploitable() |
| 1033 | msg += "\nSecurity risk level: %s\n" % exploitability |
| 1034 | msg += " %s\n" % expdescription |
| 1035 | |
| 1036 | if bShowNotes and self.notes: |
| 1037 | msg += "\nNotes:\n" |
| 1038 | msg += self.notesReport() |
| 1039 | |
| 1040 | if self.commandLine: |
| 1041 | msg += "\nCommand line: %s\n" % self.commandLine |
| 1042 | |
| 1043 | if self.environment: |
| 1044 | msg += "\nEnvironment:\n" |
| 1045 | msg += self.environmentReport() |
| 1046 | |
| 1047 | if not self.labelPC: |
| 1048 | base = HexDump.address(self.lpBaseOfDll, self.bits) |
| 1049 | if self.modFileName: |
| 1050 | fn = PathOperations.pathname_to_filename(self.modFileName) |
| 1051 | msg += "\nRunning in %s (%s)\n" % (fn, base) |
| 1052 | else: |
| 1053 | msg += "\nRunning in module at %s\n" % base |
| 1054 | |
| 1055 | if self.registers: |
| 1056 | msg += "\nRegisters:\n" |
| 1057 | msg += CrashDump.dump_registers(self.registers) |
| 1058 | if self.registersPeek: |
| 1059 | msg += "\n" |
| 1060 | msg += CrashDump.dump_registers_peek(self.registers, self.registersPeek, width=width) |
| 1061 | |
| 1062 | if self.faultDisasm: |
| 1063 | msg += "\nCode disassembly:\n" |
| 1064 | msg += CrashDump.dump_code(self.faultDisasm, self.pc, bits=self.bits) |
| 1065 | |
| 1066 | if self.stackTrace: |
| 1067 | msg += "\nStack trace:\n" |
| 1068 | if self.stackTracePretty: |
| 1069 | msg += CrashDump.dump_stack_trace_with_labels(self.stackTracePretty, bits=self.bits) |
| 1070 | else: |
| 1071 | msg += CrashDump.dump_stack_trace(self.stackTrace, bits=self.bits) |
| 1072 |
no test coverage detected