Crate minidump_synth

Crate minidump_synth 

Source
Expand description

Synthetic Minidumps for Testing

This is a hacky mess that intentionally doesn’t use minidump-common’s layouts so that we can catch incorrect changes to minidump-common itself. It exists primarily as an internal dev-dependency of rust-minidump, but is published for the sake of satisfying cargo-publish.

Basic usage is to SynthMinidump, use its methods to build up the binary, and then finish() to write the binary to a buffer. Then you can either write that to disk as an actual minidump file or feed it directly to the minidump or minidump-processor crate.

Structs§

AnnotationObject
CrashpadInfo
DumpString
An MINIDUMP_STRING, a UTF-16 string preceded by a 4-byte length.
DumpUtf8String
ExList
A stream containing a list of dump entries, using the extended header format.
ExListStream
Exception
ExceptionRecord
Guid
HandleDescriptor
A minidump handle descriptor.
List
A stream containing a list of dump entries.
ListStream
Memory
A range of memory contents.
Memory64ListStream
MemoryInfo
A minidump memory information element.
MiscFieldsBuildString
MISC_INFO_4 fields guarded by MINIDUMP_MISC4_BUILDSTRING
MiscFieldsPowerInfo
MISC_INFO_2 fields guarded by MINIDUMP_MISC1_PROCESSOR_POWER_INFO
MiscFieldsProcessTimes
MISC_INFO fields guardard by MINIDUMP_MISC1_PROCESS_TIMES
MiscFieldsTimeZone
MISC_INFO_3 fields guarded by MINIDUMP_MISC3_TIMEZONE
MiscInfo5Fields
MISC_INFO_5 fields (xstate_data must exist if process_cookie is set).
MiscStream
MINIDUMP_MISC_INFO stream.
Module
A minidump module.
ModuleCrashpadInfo
Link + Info
SectionRef
SimpleStream
A stream of arbitrary data.
SimpleStringDictionaryEntry
SynthMinidump
A writer of synthetic minidumps.
SystemInfo
Thread
A minidump thread.
ThreadName
A minidump thread name.
UnloadedModule
A minidump unloaded module.

Enums§

AnnotationValue
CpuInfo

Constants§

STOCK_VERSION_INFO
A fixed set of version info to use for tests.

Traits§

CiteLocation
DumpSection
A block of data contained in a minidump.
ListItem
A list item with optional out-of-band data.
SectionExtra
Additional methods to make working with Sections simpler
Stream
A minidump stream.

Functions§

amd64_context
Populate a CONTEXT_AMD64 struct with the given endian, rip, and rsp.
arm64_context
Populate a CONTEXT_ARM64 struct with the given endian, pc, and sp.
x86_context
Populate a CONTEXT_X86 struct with the given endian, eip, and esp.

Type Aliases§

AnnotationObjects
ModuleCrashpadInfoList
SimpleStringDictionary