diff --git a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase-members.html b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase-members.html index e1d878c0..1e43763e 100644 --- a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase-members.html +++ b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase-members.html @@ -76,7 +76,7 @@ $(function() { FinishedWritingCrashReport(std::unique_ptr< NewReport > report, UUID *uuid)=0crashpad::CrashReportDatabasepure virtual GetCompletedReports(std::vector< Report > *reports)=0crashpad::CrashReportDatabasepure virtual GetPendingReports(std::vector< Report > *reports)=0crashpad::CrashReportDatabasepure virtual - GetReportForUploading(const UUID &uuid, std::unique_ptr< const UploadReport > *report)=0crashpad::CrashReportDatabasepure virtual + GetReportForUploading(const UUID &uuid, std::unique_ptr< const UploadReport > *report, bool report_metrics=true)=0crashpad::CrashReportDatabasepure virtual GetSettings()=0crashpad::CrashReportDatabasepure virtual Initialize(const base::FilePath &path)crashpad::CrashReportDatabasestatic InitializeWithoutCreating(const base::FilePath &path)crashpad::CrashReportDatabasestatic diff --git a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase.html b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase.html index aafbb26a..4f787bbe 100644 --- a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase.html +++ b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase.html @@ -128,9 +128,9 @@ Public Member Functions virtual OperationStatus GetCompletedReports (std::vector< Report > *reports)=0  Returns a list of crash report records that have been completed, either by being uploaded or by skipping upload. More...
  -virtual OperationStatus GetReportForUploading (const UUID &uuid, std::unique_ptr< const UploadReport > *report)=0 - Obtains and locks a report object for uploading to a collection server. More...
-  +virtual OperationStatus GetReportForUploading (const UUID &uuid, std::unique_ptr< const UploadReport > *report, bool report_metrics=true)=0 + Obtains and locks a report object for uploading to a collection server. More...
OperationStatus RecordUploadComplete (std::unique_ptr< const UploadReport > report, const std::string &id)  Records a successful upload for a report and updates the last upload attempt time as returned by Settings::GetLastUploadAttemptTime(). More...
  @@ -183,7 +183,7 @@ Static Public Member Functions EnumeratorkNoError 

No error occurred.

kReportNotFound 

The report that was requested could not be located.

-

This may occur when the report is present in the database but not in a state appropriate for the requested operation, for example, if GetReportForUploading() is called to obtain report that’s already in the completed state.

+

This may occur when the report is present in the database but not in a state appropriate for the requested operation, for example, if GetReportForUploading() is called to obtain report that’s already in the completed state.

kFileSystemError 

An error occured while performing a file operation on a crash report.

A database is responsible for managing both the metadata about a report and the actual crash report itself. This error is returned when an error occurred when managing the report file. Additional information will be logged.

@@ -397,8 +397,8 @@ Static Public Member Functions - -

◆ GetReportForUploading()

+ +

◆ GetReportForUploading()

@@ -416,7 +416,13 @@ Static Public Member Functions std::unique_ptr< const UploadReport > *  - report  + report, + + + + + bool  + report_metrics = true  @@ -436,13 +442,14 @@ Static Public Member Functions
Parameters
- + +
[in]uuidThe unique identifier for the crash report record.
[out]reportA crash report record for the report to be uploaded. Only valid if this returns kNoError.
[out]reportA crash report record for the report to be uploaded. Only valid if this returns kNoError.
[in]report_metricsIf false, metrics will not be recorded for this upload attempt when RecordUploadComplete() is called or report is destroyed. Metadata for the upload attempt will still be recorded in the database.
Returns
The operation status code.
-

Implemented in crashpad::CrashReportDatabaseWin, crashpad::CrashReportDatabaseGeneric, and crashpad::CrashReportDatabaseMac.

+

Implemented in crashpad::CrashReportDatabaseWin, crashpad::CrashReportDatabaseGeneric, and crashpad::CrashReportDatabaseMac.

@@ -663,7 +670,7 @@ Static Public Member Functions

Records a successful upload for a report and updates the last upload attempt time as returned by Settings::GetLastUploadAttemptTime().

Parameters
- +
[in]reportA UploadReport object obtained from GetReportForUploading(). The UploadReport object will be invalidated and the report unlocked as part of this call.
[in]reportA UploadReport object obtained from GetReportForUploading(). The UploadReport object will be invalidated and the report unlocked as part of this call.
[in]idThe possibly empty identifier assigned to this crash report by the collection server.
diff --git a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseGeneric-members.html b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseGeneric-members.html index 3df2ac3b..7a83d3fc 100644 --- a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseGeneric-members.html +++ b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseGeneric-members.html @@ -78,7 +78,7 @@ $(function() { FinishedWritingCrashReport(std::unique_ptr< NewReport > report, UUID *uuid) overridecrashpad::CrashReportDatabaseGenericvirtual GetCompletedReports(std::vector< Report > *reports) overridecrashpad::CrashReportDatabaseGenericvirtual GetPendingReports(std::vector< Report > *reports) overridecrashpad::CrashReportDatabaseGenericvirtual - GetReportForUploading(const UUID &uuid, std::unique_ptr< const UploadReport > *report) overridecrashpad::CrashReportDatabaseGenericvirtual + GetReportForUploading(const UUID &uuid, std::unique_ptr< const UploadReport > *report, bool report_metrics) overridecrashpad::CrashReportDatabaseGenericvirtual GetSettings() overridecrashpad::CrashReportDatabaseGenericvirtual Initialize(const base::FilePath &path, bool may_create) (defined in crashpad::CrashReportDatabaseGeneric)crashpad::CrashReportDatabaseGeneric crashpad::CrashReportDatabase::Initialize(const base::FilePath &path)crashpad::CrashReportDatabasestatic diff --git a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseGeneric.html b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseGeneric.html index 9cc69076..9bb8de2c 100644 --- a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseGeneric.html +++ b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseGeneric.html @@ -104,9 +104,9 @@ bool Initialize (const OperationStatus GetCompletedReports (std::vector< Report > *reports) override  Returns a list of crash report records that have been completed, either by being uploaded or by skipping upload. More...
  -OperationStatus GetReportForUploading (const UUID &uuid, std::unique_ptr< const UploadReport > *report) override - Obtains and locks a report object for uploading to a collection server. More...
-  +OperationStatus GetReportForUploading (const UUID &uuid, std::unique_ptr< const UploadReport > *report, bool report_metrics) override + Obtains and locks a report object for uploading to a collection server. More...
OperationStatus SkipReportUpload (const UUID &uuid, Metrics::CrashSkippedReason reason) override  Moves a report from the pending state to the completed state, but without the report being uploaded. More...
  @@ -339,8 +339,8 @@ Additional Inherited Members - -

◆ GetReportForUploading()

+ +

◆ GetReportForUploading()

@@ -358,7 +358,13 @@ Additional Inherited Members std::unique_ptr< const UploadReport > *  - report  + report, + + + + + bool  + report_metrics  @@ -378,13 +384,14 @@ Additional Inherited Members
Parameters
- + +
[in]uuidThe unique identifier for the crash report record.
[out]reportA crash report record for the report to be uploaded. Only valid if this returns kNoError.
[out]reportA crash report record for the report to be uploaded. Only valid if this returns kNoError.
[in]report_metricsIf false, metrics will not be recorded for this upload attempt when RecordUploadComplete() is called or report is destroyed. Metadata for the upload attempt will still be recorded in the database.
Returns
The operation status code.
-

Implements crashpad::CrashReportDatabase.

+

Implements crashpad::CrashReportDatabase.

diff --git a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseMac-members.html b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseMac-members.html index 8ec6b602..f6a131e0 100644 --- a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseMac-members.html +++ b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseMac-members.html @@ -77,7 +77,7 @@ $(function() { FinishedWritingCrashReport(std::unique_ptr< NewReport > report, UUID *uuid) overridecrashpad::CrashReportDatabaseMacvirtual GetCompletedReports(std::vector< Report > *reports) overridecrashpad::CrashReportDatabaseMacvirtual GetPendingReports(std::vector< Report > *reports) overridecrashpad::CrashReportDatabaseMacvirtual - GetReportForUploading(const UUID &uuid, std::unique_ptr< const UploadReport > *report) overridecrashpad::CrashReportDatabaseMacvirtual + GetReportForUploading(const UUID &uuid, std::unique_ptr< const UploadReport > *report, bool report_metrics) overridecrashpad::CrashReportDatabaseMacvirtual GetSettings() overridecrashpad::CrashReportDatabaseMacvirtual Initialize(bool may_create) (defined in crashpad::CrashReportDatabaseMac)crashpad::CrashReportDatabaseMac crashpad::CrashReportDatabase::Initialize(const base::FilePath &path)crashpad::CrashReportDatabasestatic diff --git a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseMac.html b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseMac.html index fc6b2024..4b64f20c 100644 --- a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseMac.html +++ b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseMac.html @@ -110,9 +110,9 @@ bool Initialize (bool OperationStatus GetCompletedReports (std::vector< Report > *reports) override  Returns a list of crash report records that have been completed, either by being uploaded or by skipping upload. More...
  -OperationStatus GetReportForUploading (const UUID &uuid, std::unique_ptr< const UploadReport > *report) override - Obtains and locks a report object for uploading to a collection server. More...
-  +OperationStatus GetReportForUploading (const UUID &uuid, std::unique_ptr< const UploadReport > *report, bool report_metrics) override + Obtains and locks a report object for uploading to a collection server. More...
OperationStatus SkipReportUpload (const UUID &uuid, Metrics::CrashSkippedReason reason) override  Moves a report from the pending state to the completed state, but without the report being uploaded. More...
  @@ -308,8 +308,8 @@ Additional Inherited Members - -

◆ GetReportForUploading()

+ +

◆ GetReportForUploading()

@@ -327,7 +327,13 @@ Additional Inherited Members std::unique_ptr< const UploadReport > *  - report  + report, + + + + + bool  + report_metrics  @@ -347,13 +353,14 @@ Additional Inherited Members
Parameters
- + +
[in]uuidThe unique identifier for the crash report record.
[out]reportA crash report record for the report to be uploaded. Only valid if this returns kNoError.
[out]reportA crash report record for the report to be uploaded. Only valid if this returns kNoError.
[in]report_metricsIf false, metrics will not be recorded for this upload attempt when RecordUploadComplete() is called or report is destroyed. Metadata for the upload attempt will still be recorded in the database.
Returns
The operation status code.
-

Implements crashpad::CrashReportDatabase.

+

Implements crashpad::CrashReportDatabase.

diff --git a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseWin-members.html b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseWin-members.html index c63942b6..b0cb19ab 100644 --- a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseWin-members.html +++ b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseWin-members.html @@ -77,7 +77,7 @@ $(function() { FinishedWritingCrashReport(std::unique_ptr< NewReport > report, UUID *uuid) overridecrashpad::CrashReportDatabaseWinvirtual GetCompletedReports(std::vector< Report > *reports) overridecrashpad::CrashReportDatabaseWinvirtual GetPendingReports(std::vector< Report > *reports) overridecrashpad::CrashReportDatabaseWinvirtual - GetReportForUploading(const UUID &uuid, std::unique_ptr< const UploadReport > *report) overridecrashpad::CrashReportDatabaseWinvirtual + GetReportForUploading(const UUID &uuid, std::unique_ptr< const UploadReport > *report, bool report_metrics) overridecrashpad::CrashReportDatabaseWinvirtual GetSettings() overridecrashpad::CrashReportDatabaseWinvirtual Initialize(bool may_create) (defined in crashpad::CrashReportDatabaseWin)crashpad::CrashReportDatabaseWin crashpad::CrashReportDatabase::Initialize(const base::FilePath &path)crashpad::CrashReportDatabasestatic diff --git a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseWin.html b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseWin.html index 43ffa29c..d8d36a91 100644 --- a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseWin.html +++ b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabaseWin.html @@ -106,9 +106,9 @@ bool Initialize (bool OperationStatus GetCompletedReports (std::vector< Report > *reports) override  Returns a list of crash report records that have been completed, either by being uploaded or by skipping upload. More...
  -OperationStatus GetReportForUploading (const UUID &uuid, std::unique_ptr< const UploadReport > *report) override - Obtains and locks a report object for uploading to a collection server. More...
-  +OperationStatus GetReportForUploading (const UUID &uuid, std::unique_ptr< const UploadReport > *report, bool report_metrics) override + Obtains and locks a report object for uploading to a collection server. More...
OperationStatus SkipReportUpload (const UUID &uuid, Metrics::CrashSkippedReason reason) override  Moves a report from the pending state to the completed state, but without the report being uploaded. More...
  @@ -300,8 +300,8 @@ Additional Inherited Members - -

◆ GetReportForUploading()

+ +

◆ GetReportForUploading()

@@ -319,7 +319,13 @@ Additional Inherited Members std::unique_ptr< const UploadReport > *  - report  + report, + + + + + bool  + report_metrics  @@ -339,13 +345,14 @@ Additional Inherited Members
Parameters
- + +
[in]uuidThe unique identifier for the crash report record.
[out]reportA crash report record for the report to be uploaded. Only valid if this returns kNoError.
[out]reportA crash report record for the report to be uploaded. Only valid if this returns kNoError.
[in]report_metricsIf false, metrics will not be recorded for this upload attempt when RecordUploadComplete() is called or report is destroyed. Metadata for the upload attempt will still be recorded in the database.
Returns
The operation status code.
-

Implements crashpad::CrashReportDatabase.

+

Implements crashpad::CrashReportDatabase.

diff --git a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase_1_1UploadReport.html b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase_1_1UploadReport.html index d7186f81..4eed511e 100644 --- a/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase_1_1UploadReport.html +++ b/doc/generated/doxygen/classcrashpad_1_1CrashReportDatabase_1_1UploadReport.html @@ -137,7 +137,7 @@ time_t 

Detailed Description

A crash report that is in the process of being uploaded.

-

An instance of this class should be created via GetReportForUploading().

+

An instance of this class should be created via GetReportForUploading().

Member Function Documentation

◆ GetAttachments()

diff --git a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader-members.html b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader-members.html index 229450e3..256d72c4 100644 --- a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader-members.html +++ b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader-members.html @@ -74,13 +74,15 @@ $(function() { ElfImageReader() (defined in crashpad::ElfImageReader)crashpad::ElfImageReader FileType() constcrashpad::ElfImageReader GetDebugAddress(VMAddress *debug)crashpad::ElfImageReader - GetDynamicSymbol(const std::string &name, VMAddress *address, VMSize *size)crashpad::ElfImageReader - GetLoadBias() constcrashpad::ElfImageReaderinline - GetNumberOfSymbolEntriesFromDtGnuHash(VMSize *number_of_symbol_table_entries)crashpad::ElfImageReader - GetNumberOfSymbolEntriesFromDtHash(VMSize *number_of_symbol_table_entries)crashpad::ElfImageReader + GetDynamicArrayAddress(VMAddress *address)crashpad::ElfImageReader + GetDynamicSymbol(const std::string &name, VMAddress *address, VMSize *size)crashpad::ElfImageReader + GetLoadBias() constcrashpad::ElfImageReaderinline + GetNumberOfSymbolEntriesFromDtGnuHash(VMSize *number_of_symbol_table_entries)crashpad::ElfImageReader + GetNumberOfSymbolEntriesFromDtHash(VMSize *number_of_symbol_table_entries)crashpad::ElfImageReader + GetProgramHeaderTableAddress()crashpad::ElfImageReader header_32_ (defined in crashpad::ElfImageReader)crashpad::ElfImageReader header_64_ (defined in crashpad::ElfImageReader)crashpad::ElfImageReader - Initialize(const ProcessMemoryRange &memory, VMAddress address)crashpad::ElfImageReader + Initialize(const ProcessMemoryRange &memory, VMAddress address, bool verbose=true)crashpad::ElfImageReader Memory() constcrashpad::ElfImageReader Notes(ssize_t max_note_size)crashpad::ElfImageReader NotesWithNameAndType(const std::string &name, NoteReader::NoteType type, ssize_t max_note_size)crashpad::ElfImageReader diff --git a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader.html b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader.html index cbd32a01..f758b666 100644 --- a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader.html +++ b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader.html @@ -89,9 +89,9 @@ Classes - - - + + + @@ -113,6 +113,13 @@ Public Member Functions + + + + + + @@ -157,7 +164,7 @@ Public Member Functions

Returns the base address of the image's memory range.

-

This may differ from the address passed to Initialize() if the ELF header is not loaded at the start of the first PT_LOAD segment.

+

This may differ from the address passed to Initialize() if the ELF header is not loaded at the start of the first PT_LOAD segment.

@@ -207,6 +214,33 @@ Public Member Functions
Returns
true if the debug address was found.
+ + + +

◆ GetDynamicArrayAddress()

+ +
+
+

Public Member Functions

bool Initialize (const ProcessMemoryRange &memory, VMAddress address)
 Initializes the reader. More...
 
bool Initialize (const ProcessMemoryRange &memory, VMAddress address, bool verbose=true)
 Initializes the reader. More...
 
VMAddress Address () const
 Returns the base address of the image's memory range. More...
 
bool GetDebugAddress (VMAddress *debug)
 Determine the debug address. More...
 
bool GetDynamicArrayAddress (VMAddress *address)
 Determine the address of PT_DYNAMIC segment. More...
 
+VMAddress GetProgramHeaderTableAddress ()
 Return the address of the program header table.
 
std::unique_ptr< NoteReaderNotes (ssize_t max_note_size)
 Return a NoteReader for this image, which scans all PT_NOTE segments in the image. More...
 
+ + + + + + + +
bool crashpad::ElfImageReader::GetDynamicArrayAddress (VMAddressaddress)
+
+ +

Determine the address of PT_DYNAMIC segment.

+
Parameters
+ + +
[out]addressThe address of the array, valid if this method returns true.
+
+
+
Returns
true on success. Otherwise false with a message logged.
+
@@ -340,8 +374,8 @@ Depending on the linker that generated the DT_GNU_HASH section, thi - -

◆ Initialize()

+ +

◆ Initialize()

@@ -356,7 +390,13 @@ Depending on the linker that generated the DT_GNU_HASH section, thi VMAddress  - address  + address, + + + + + bool  + verbose = true  @@ -372,6 +412,7 @@ Depending on the linker that generated the DT_GNU_HASH section, thi +
[in]memoryA memory reader for the remote process.
[in]addressThe address in the remote process' address space where the ELF image is loaded.
[in]verbosetrue if this method should log error messages during initialization. Setting this value to false will reduce the error messages relating to verifying the ELF image, but may not suppress logging entirely.
diff --git a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTable-members.html b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTable-members.html index d093d5cb..d0bdbc67 100644 --- a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTable-members.html +++ b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTable-members.html @@ -72,11 +72,11 @@ $(function() { - - + + - +
GetDynamicSegment(VMAddress *address, VMSize *size) const =0 (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTablepure virtual
GetNoteSegment(size_t *start_index, VMAddress *address, VMSize *size) const =0 (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTablepure virtual
GetPreferredElfHeaderAddress(VMAddress *address) const =0 (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTablepure virtual
GetPreferredLoadedMemoryRange(VMAddress *address, VMSize *size) const =0 (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTablepure virtual
GetPreferredElfHeaderAddress(VMAddress *address, bool verbose) const =0 (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTablepure virtual
GetPreferredLoadedMemoryRange(VMAddress *address, VMSize *size, bool verbose) const =0 (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTablepure virtual
ProgramHeaderTable() (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTableinlineprotected
Size() const =0 (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTablepure virtual
VerifyLoadSegments() const =0 (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTablepure virtual
VerifyLoadSegments(bool verbose) const =0 (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTablepure virtual
~ProgramHeaderTable() (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTableinlinevirtual
diff --git a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTable.html b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTable.html index 896b6d93..aa385d5c 100644 --- a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTable.html +++ b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTable.html @@ -82,21 +82,21 @@ Inheritance diagram for crashpad::ElfImageReader::ProgramHeaderTable: - - + + - - - - + + + + diff --git a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTableSpecific-members.html b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTableSpecific-members.html index df056c60..e50d9214 100644 --- a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTableSpecific-members.html +++ b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTableSpecific-members.html @@ -72,14 +72,14 @@ $(function() {

Public Member Functions

-virtual bool VerifyLoadSegments () const =0
 
+virtual bool VerifyLoadSegments (bool verbose) const =0
 
virtual size_t Size () const =0
 
virtual bool GetDynamicSegment (VMAddress *address, VMSize *size) const =0
 
-virtual bool GetPreferredElfHeaderAddress (VMAddress *address) const =0
 
-virtual bool GetPreferredLoadedMemoryRange (VMAddress *address, VMSize *size) const =0
 
+virtual bool GetPreferredElfHeaderAddress (VMAddress *address, bool verbose) const =0
 
+virtual bool GetPreferredLoadedMemoryRange (VMAddress *address, VMSize *size, bool verbose) const =0
 
virtual bool GetNoteSegment (size_t *start_index, VMAddress *address, VMSize *size) const =0
 
- - + + - + - +
GetDynamicSegment(VMAddress *address, VMSize *size) const override (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inlinevirtual
GetNoteSegment(size_t *start_index, VMAddress *address, VMSize *size) const override (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inlinevirtual
GetPreferredElfHeaderAddress(VMAddress *address) const override (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inlinevirtual
GetPreferredLoadedMemoryRange(VMAddress *base, VMSize *size) const override (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inlinevirtual
GetPreferredElfHeaderAddress(VMAddress *address, bool verbose) const override (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inlinevirtual
GetPreferredLoadedMemoryRange(VMAddress *base, VMSize *size, bool verbose) const override (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inlinevirtual
GetProgramHeader(uint32_t type, const PhdrType **header_out) const (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inline
Initialize(const ProcessMemoryRange &memory, VMAddress address, VMSize num_segments) (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inline
Initialize(const ProcessMemoryRange &memory, VMAddress address, VMSize num_segments, bool verbose) (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inline
ProgramHeaderTable() (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTableinlineprotected
ProgramHeaderTableSpecific() (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inline
Size() const override (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inlinevirtual
VerifyLoadSegments() const override (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inlinevirtual
VerifyLoadSegments(bool verbose) const override (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inlinevirtual
~ProgramHeaderTable() (defined in crashpad::ElfImageReader::ProgramHeaderTable)crashpad::ElfImageReader::ProgramHeaderTableinlinevirtual
~ProgramHeaderTableSpecific() (defined in crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >)crashpad::ElfImageReader::ProgramHeaderTableSpecific< PhdrType >inline
diff --git a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTableSpecific.html b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTableSpecific.html index 12a200a0..a22142d2 100644 --- a/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTableSpecific.html +++ b/doc/generated/doxygen/classcrashpad_1_1ElfImageReader_1_1ProgramHeaderTableSpecific.html @@ -82,21 +82,21 @@ Inheritance diagram for crashpad::ElfImageReader::ProgramHeaderTableSpecific< - - - - + + + + - - - - + + + + diff --git a/doc/generated/doxygen/classcrashpad_1_1MemoryMap-members.html b/doc/generated/doxygen/classcrashpad_1_1MemoryMap-members.html index c44e9ba4..b1c8d86e 100644 --- a/doc/generated/doxygen/classcrashpad_1_1MemoryMap-members.html +++ b/doc/generated/doxygen/classcrashpad_1_1MemoryMap-members.html @@ -70,7 +70,7 @@ $(function() {

This is the complete list of members for crashpad::MemoryMap, including all inherited members.

Public Member Functions

-bool Initialize (const ProcessMemoryRange &memory, VMAddress address, VMSize num_segments)
 
-bool VerifyLoadSegments () const override
 
+bool Initialize (const ProcessMemoryRange &memory, VMAddress address, VMSize num_segments, bool verbose)
 
+bool VerifyLoadSegments (bool verbose) const override
 
size_t Size () const override
 
-bool GetPreferredElfHeaderAddress (VMAddress *address) const override
 
-bool GetPreferredLoadedMemoryRange (VMAddress *base, VMSize *size) const override
 
+bool GetPreferredElfHeaderAddress (VMAddress *address, bool verbose) const override
 
+bool GetPreferredLoadedMemoryRange (VMAddress *base, VMSize *size, bool verbose) const override
 
bool GetDynamicSegment (VMAddress *address, VMSize *size) const override
 
- + diff --git a/doc/generated/doxygen/classcrashpad_1_1MemoryMap.html b/doc/generated/doxygen/classcrashpad_1_1MemoryMap.html index 58a0a15a..e9506442 100644 --- a/doc/generated/doxygen/classcrashpad_1_1MemoryMap.html +++ b/doc/generated/doxygen/classcrashpad_1_1MemoryMap.html @@ -92,22 +92,22 @@ Public Member Functions - - - + + +
FindFileMmapStart(const Mapping &mapping) constcrashpad::MemoryMap
FindFilePossibleMmapStarts(const Mapping &mapping) constcrashpad::MemoryMap
FindMapping(LinuxVMAddress address) constcrashpad::MemoryMap
FindMappingWithName(const std::string &name) constcrashpad::MemoryMap
Initialize(PtraceConnection *connection)crashpad::MemoryMap
 
const MappingFindMappingWithName (const std::string &name) const
 
const MappingFindFileMmapStart (const Mapping &mapping) const
 Find the first Mapping in a series of mappings for the same file. More...
 
std::vector< const Mapping * > FindFilePossibleMmapStarts (const Mapping &mapping) const
 Find Mappings that share a Mapping's file, mapped from offset 0. More...
 

Detailed Description

Accesses information about mapped memory in another process.

The target process must be stopped to guarantee correct mappings. If the target process is not stopped, mappings may be invalid after the return from Initialize(), and even mappings existing at the time Initialize() was called may not be found.

Member Function Documentation

- -

◆ FindFileMmapStart()

+ +

◆ FindFilePossibleMmapStarts()

- + @@ -116,16 +116,17 @@ Public Member Functions
const MemoryMap::Mapping * crashpad::MemoryMap::FindFileMmapStart std::vector< const MemoryMap::Mapping * > crashpad::MemoryMap::FindFilePossibleMmapStarts ( const Mapping mapping)
-

Find the first Mapping in a series of mappings for the same file.

-

Executables and libaries are typically loaded into several mappings with varying permissions for different segments. This method searches for the mapping with the highest address at or below mapping, which maps the same file as mapping from file offset 0.

-

If mapping is not found, nullptr is returned. If mapping is found but does not map a file, mapping is returned.

+

Find Mappings that share a Mapping's file, mapped from offset 0.

+

Executables and libaries are typically loaded into several mappings with varying permissions for different segments. Portions of an ELF file may be mapped multiple times as part of loading the file, for example, when initializing GNU_RELRO segments. This method searches for mappings at or below mapping in memory that are mapped from the same file as mapping from offset 0.

+

This method is intended to help identify the possible base address for loaded modules, but it is the caller's responsibility to determine which returned mapping is correct.

+

If mapping does not refer to a valid mapping, an empty vector will be returned and a message will be logged. If mapping is found but does not map a file, mapping is returned in possible_starts.

Parameters
[in]mappingA Mapping whose series to find the start of.
-
Returns
The first Mapping in the series or nullptr on failure with a message logged.
+
Returns
a vector of the possible mapping starts.
diff --git a/doc/generated/doxygen/classcrashpad_1_1Metrics.html b/doc/generated/doxygen/classcrashpad_1_1Metrics.html index 461f0489..dff70675 100644 --- a/doc/generated/doxygen/classcrashpad_1_1Metrics.html +++ b/doc/generated/doxygen/classcrashpad_1_1Metrics.html @@ -223,6 +223,8 @@ static void  kUploadFailed 

The upload of the crash failed during communication with the server.

+kPrepareForUploadFailed 

There was an error between accessing the report from the database and uploading it to the crash server.

+ kMaxValue 

The number of values in this enumeration; not a valid value.

diff --git a/doc/generated/doxygen/classcrashpad_1_1test_1_1ScopedModuleHandle-members.html b/doc/generated/doxygen/classcrashpad_1_1test_1_1ScopedModuleHandle-members.html index 913a16eb..26b47460 100644 --- a/doc/generated/doxygen/classcrashpad_1_1test_1_1ScopedModuleHandle-members.html +++ b/doc/generated/doxygen/classcrashpad_1_1test_1_1ScopedModuleHandle-members.html @@ -74,8 +74,9 @@ $(function() { LookUpSymbol(const char *symbol_name) constcrashpad::test::ScopedModuleHandleinline ModuleHandle typedef (defined in crashpad::test::ScopedModuleHandle)crashpad::test::ScopedModuleHandle ScopedModuleHandle(ModuleHandle handle) (defined in crashpad::test::ScopedModuleHandle)crashpad::test::ScopedModuleHandleexplicit - valid() constcrashpad::test::ScopedModuleHandleinline - ~ScopedModuleHandle() (defined in crashpad::test::ScopedModuleHandle)crashpad::test::ScopedModuleHandle + ScopedModuleHandle(ScopedModuleHandle &&handle) (defined in crashpad::test::ScopedModuleHandle)crashpad::test::ScopedModuleHandle + valid() constcrashpad::test::ScopedModuleHandleinline + ~ScopedModuleHandle() (defined in crashpad::test::ScopedModuleHandle)crashpad::test::ScopedModuleHandle