Crashpad

Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 1 2 3 4]

►N crashpad | The main namespace
►N internal | The internal namespace, not for public use
►C CaptureMemory |
C Delegate | An interface to a platform-specific process reader
C CaptureMemoryDelegateWin |
C CheckedAddressRangeGeneric | Ensures that a range, composed of a base and a size, does not overflow the pointer type of the process it describes a range in
C ClientData | The context data for registered threadpool waits
C ExceptionSnapshotMac | An ExceptionSnapshot of an exception sustained by a running (or crashed) process on a macOS system
C ExceptionSnapshotWin |
C LocalAllocTraits |
C MachOImageSymbolTableReaderInitializer | The internal implementation for MachOImageSymbolTableReader
C MemoryMapRegionSnapshotWin |
C MemorySnapshotMac | A MemorySnapshot of a memory region in a process on the running system, when the system runs macOS
C MemorySnapshotWin | A MemorySnapshot of a memory region in a process on the running system, when the system runs Windows
C MinidumpModuleCodeViewRecordPDBLinkWriter | The base class for writers of CodeView records that serve as links to `.pdb` (program database) files
C MinidumpRVAListWriter | The writer for a MinidumpRVAList object in a minidump file, containing a list of RVA pointers
C MinidumpStreamWriter | The base class for all second-level objects (“streams”) in a minidump file
C MinidumpStringListWriter | The writer for a MinidumpRVAList object in a minidump file, containing a list of MinidumpStringWriterType objects
C MinidumpStringWriter | Writes a variable-length string to a minidump file in accordance with the string type’s characteristics
C MinidumpUTF16StringWriter | Writes a variable-length UTF-16-encoded MINIDUMP_STRING to a minidump file
C MinidumpUTF8StringWriter | Writes a variable-length UTF-8-encoded MinidumpUTF8String to a minidump file
C MinidumpWritable | The base class for all content that might be written to a minidump file
C MinidumpWriterUtil | A collection of utility functions used by the MinidumpWritable family of classes
C ModuleSnapshotMac | A ModuleSnapshot of a code module (binary image) loaded into a running (or crashed) process on a Mac OS X system
C ModuleSnapshotMinidump | A ModuleSnapshot based on a module in a minidump file
C ModuleSnapshotWin | A ModuleSnapshot of a code module (binary image) loaded into a running (or crashed) process on a Windows system
C PipeServiceContext | Context information for the named pipe handler threads
C ScopedFileHANDLECloseTraits |
C ScopedKernelHANDLECloseTraits |
C ScopedLockedFileHandleTraits |
C SystemSnapshotMac | A SystemSnapshot of the running system, when the system runs Mac OS X
C SystemSnapshotWin | A SystemSnapshot of the running system, when the system runs Windows
C ThreadSnapshotMac | A ThreadSnapshot of a thread in a running (or crashed) process on a macOS system
C ThreadSnapshotWin | A ThreadSnapshot of a thread in a running (or crashed) process on a Windows system
C UniversalMachExcServerImpl |
C UserDataMinidumpStreamListEntry | A linked list of blocks representing custom streams in the minidump, with addresses (and size) stored as uint64_t to simplify reading from the handler process
C WorkerThreadImpl |
►N process_types |
►N internal |
C Traits32 |
C Traits64 |
C CLIENT_ID |
C CrashpadInfo |
C CURDIR |
C EXCEPTION_POINTERS |
C GdiHandleBufferCountForBitness |
C GdiHandleBufferCountForBitness< internal::Traits32 > |
C GdiHandleBufferCountForBitness< internal::Traits64 > |
C LDR_DATA_TABLE_ENTRY |
C LIST_ENTRY |
C NT_TIB |
C PEB |
C PEB_LDR_DATA |
C PROCESS_BASIC_INFORMATION | Selected structures from winternl.h, ntddk.h, and `dt ntdll!xxx`, customized to have both x86 and x64 sizes available
C RTL_CRITICAL_SECTION |
C RTL_CRITICAL_SECTION_DEBUG |
C RTL_DRIVE_LETTER_CURDIR |
C RTL_USER_PROCESS_PARAMETERS |
C STRING |
C SYSTEM_HANDLE_INFORMATION_EX |
C SYSTEM_HANDLE_TABLE_ENTRY_INFO_EX |
C SYSTEM_PROCESS_INFORMATION |
C SYSTEM_THREAD_INFORMATION |
C TEB |
C THREAD_BASIC_INFORMATION |
C UNICODE_STRING |
C VM_COUNTERS |
C VM_COUNTERS< internal::Traits32 > |
C VM_COUNTERS< internal::Traits64 > |
►N test | The testing namespace, for use in test code only
►N internal |
C MachMultiprocessInfo |
C MultiprocessInfo |
C ChildLauncher | Creates a child process for testing. Uses gtest `ASSERT_*` to indicate failure. The child's output is passed through a pipe and is available via stdout_read_handle(), and the child's input is attached to a second pipe available via stdin_write_handle()
C MachMultiprocess | Manages a Mach-aware multiprocess test
C MinidumpWritableTraits | A traits class defining whether a minidump object type is required to appear only as a fixed-size object or if it is variable-sized
C Multiprocess | Manages a multiprocess test
C MultiprocessExec | Manages an `exec()`-based multiprocess test
C Paths | Functions to obtain paths from within tests
C ScopedTempDir | A RAII object that creates a temporary directory for testing
C TestExceptionSnapshot | A test ExceptionSnapshot that can carry arbitrary data for testing purposes
C TestMemoryMapRegionSnapshot | A test MemoryMapRegionSnapshot that can carry arbitrary data for testing purposes
C TestMemorySnapshot | A test MemorySnapshot that can carry arbitrary data for testing purposes
C TestMinidumpMemoryWriter | A SnapshotMinidumpMemoryWriter implementation used for testing
C TestModuleSnapshot | A test ModuleSnapshot that can carry arbitrary data for testing purposes
C TestProcessSnapshot | A test ProcessSnapshot that can carry arbitrary data for testing purposes
C TestSystemSnapshot | A test SystemSnapshot that can carry arbitrary data for testing purposes
C TestThreadSnapshot | A test ThreadSnapshot that can carry arbitrary data for testing purposes
C TestUInt32MinidumpWritable | An internal::MinidumpWritable that carries a `uint32_t` for testing
►C WinChildProcess | Facilitates the launching of child processes from unit tests
C Handles | Groups handles used to communicate with, observe, and manage a child process
C WinMultiprocess | Manages a multiprocess test on Windows
C AgePruneCondition | A PruneCondition that deletes reports older than the specified number days
►C AlignedAllocator | A standard allocator that aligns its allocations as requested, suitable for use as an allocator in standard containers
C rebind |
C BinaryPruneCondition | A PruneCondition that conjoins two other PruneConditions
C CheckedRange | Ensures that a range, composed of a base and size, does not overflow its data type
C ChildPortHandshake | Implements a handshake protocol that allows processes to exchange port rights
►C ChildPortServer | A server interface for the `child_port` Mach subsystem
C Interface | An interface that the request message that is a part of the `child_port` Mach subsystem can be dispatched to
C ClientToServerMessage | The message passed from client to server by SendToCrashHandlerServer()
C CodeViewRecordPDB20 | A CodeView record linking to a `.pdb` 2.0 file
C CodeViewRecordPDB70 | A CodeView record linking to a `.pdb` 7.0 file
C CompositeHTTPBodyStream | An implementation of HTTPBodyStream that combines an array of several other HTTPBodyStream objects into a single, unified stream
C CompositeMachMessageServer | Adapts multiple MachMessageServer::Interface implementations for simultaneous use in a single MachMessageServer::Run() call
C CPUContext | A context structure capable of carrying the context of any supported CPU architecture
►C CPUContextX86 | A context structure carrying 32-bit x86 CPU state
C Fsave |
C Fxsave |
C X87OrMMXRegister |
►C CPUContextX86_64 | A context structure carrying x86_64 CPU state
C Fxsave |
C CrashpadClient | The primary interface for an application to have Crashpad monitor it for crashes
C CrashpadInfo | A structure that can be used by a Crashpad-enabled program to provide information to the Crashpad crash handler
C CrashpadInfoClientOptions | Options represented in a client’s CrashpadInfo structure
►C CrashReportDatabase | An interface for managing a collection of crash report files and metadata associated with the crash reports
C CallErrorWritingCrashReport | A scoper to cleanly handle the interface requirement imposed by PrepareNewCrashReport()
C NewReport | A crash report that is in the process of being written
C Report | A crash report record
C CrashReportExceptionHandler | An exception handler that writes crash reports for exception messages to a CrashReportDatabase
C CrashReportUploadThread | A thread that processes pending crash reports in a CrashReportDatabase by uploading them or marking them as completed without upload, as desired
C DatabaseSizePruneCondition | A PruneCondition that deletes older reports to keep the total Crashpad database size under the specified limit
►C ExceptionHandlerServer | Runs the main exception-handling server in Crashpad’s handler process
C Delegate |
C ExceptionInformation | Structure read out of the client process by the crash handler when an exception occurs
►C ExceptionPorts | A better interface to `*_get_exception_ports()` and `*_set_exception_ports()`
C ExceptionHandler | Information about a registered exception handler
C ExceptionHandlerVector | Wraps `std::vector<ExceptionHandler>`, providing proper cleanup of the send rights contained in each element’s ExceptionHandler::port
C ExceptionSnapshot | An abstract interface to a snapshot representing an exception that a snapshot process sustained and triggered the snapshot being taken
C FileHTTPBodyStream | An implementation of HTTPBodyStream that reads from the specified file and provides its contents for an HTTP body
C FileReader | A file reader implementation that wraps traditional system file operations on files accessed through the filesystem
C FileReaderInterface | An interface to read to files and other file-like objects with semantics matching the underlying platform (POSIX or Windows)
C FileSeekerInterface | An interface to seek in files and other file-like objects with semantics matching the underlying platform (POSIX or Windows)
C FileWriter | A file writer implementation that wraps traditional system file operations on files accessed through the filesystem
C FileWriterInterface | An interface to write to files and other file-like objects with semantics matching the underlying platform (POSIX or Windows)
C GzipHTTPBodyStream | An implementation of HTTPBodyStream that `gzip`-compresses another HTTPBodyStream
C HandleSnapshot |
C HTTPBodyStream | An interface to a stream that can be used for an HTTP request body
C HTTPMultipartBuilder | This class is used to build a MIME multipart message, conforming to RFC 2046, for use as a HTTP request body
C HTTPTransport | HTTPTransport executes a HTTP request using the specified URL, HTTP method, headers, and body. This class can only issue a synchronous HTTP request
C InitialClientData | A container for the data associated with the `--initial-client-data` method for initializing the handler process on Windows
C InitializationState | Tracks whether data are initialized
C InitializationStateDcheck | Tracks whether data are initialized, triggering a DCHECK assertion on an invalid data access
►C MachMessageServer | Runs a Mach message server to handle a Mach RPC request for MIG servers
C Interface | A Mach RPC callback interface, called by Run()
C MachOImageAnnotationsReader | A reader for annotations stored in a Mach-O image mapped into another process
C MachOImageReader | A reader for Mach-O images mapped into another process
C MachOImageSegmentReader | A reader for `LC_SEGMENT` or `LC_SEGMENT_64` load commands in Mach-O images mapped into another process
►C MachOImageSymbolTableReader | A reader for symbol tables in Mach-O images mapped into another process
C SymbolInformation | Information about a symbol in a module’s symbol table
C MemoryMapRegionSnapshot | An abstract interface to a snapshot representing a region of the memory map present in the snapshot process
►C MemorySnapshot | An abstract interface to a snapshot representing a region of memory present in a snapshot process
C Delegate | An interface that MemorySnapshot clients must implement in order to receive memory snapshot data
C Metrics | Container class to hold shared UMA metrics integration points
C MinidumpContextAMD64 | An x86_64 (AMD64) CPU context (register state) carried in a minidump file
C MinidumpContextAMD64Writer | The writer for a MinidumpContextAMD64 structure in a minidump file
C MinidumpContextWriter | The base class for writers of CPU context structures in minidump files
C MinidumpContextX86 | A 32-bit x86 CPU context (register state) carried in a minidump file
C MinidumpContextX86Writer | The writer for a MinidumpContextX86 structure in a minidump file
C MinidumpCrashpadInfo | Additional Crashpad-specific information carried within a minidump file
C MinidumpCrashpadInfoWriter | The writer for a MinidumpCrashpadInfo stream in a minidump file
C MinidumpExceptionWriter | The writer for a MINIDUMP_EXCEPTION_STREAM stream in a minidump file
C MinidumpFileWriter | The root-level object in a minidump file
C MinidumpHandleDataWriter | The writer for a MINIDUMP_HANDLE_DATA_STREAM stream in a minidump and its contained MINIDUMP_HANDLE_DESCRIPTOR s
C MinidumpMemoryInfoListWriter | The writer for a MINIDUMP_MEMORY_INFO_LIST stream in a minidump file, containing a list of MINIDUMP_MEMORY_INFO objects
C MinidumpMemoryListWriter | The writer for a MINIDUMP_MEMORY_LIST stream in a minidump file, containing a list of MINIDUMP_MEMORY_DESCRIPTOR objects
C MinidumpMiscInfoWriter | The writer for a stream in the MINIDUMP_MISC_INFO family in a minidump file
C MinidumpModuleCodeViewRecordPDB20Writer | The writer for a CodeViewRecordPDB20 object in a minidump file
C MinidumpModuleCodeViewRecordPDB70Writer | The writer for a CodeViewRecordPDB70 object in a minidump file
C MinidumpModuleCodeViewRecordWriter | The base class for writers of CodeView records referenced by MINIDUMP_MODULE::CvRecord in minidump files
C MinidumpModuleCrashpadInfo | Additional Crashpad-specific information about a module carried within a minidump file
C MinidumpModuleCrashpadInfoLink | A link between a MINIDUMP_MODULE structure and additional Crashpad-specific information about a module carried within a minidump file
C MinidumpModuleCrashpadInfoList | Additional Crashpad-specific information about modules carried within a minidump file
C MinidumpModuleCrashpadInfoListWriter | The writer for a MinidumpModuleCrashpadInfoList object in a minidump file, containing a list of MinidumpModuleCrashpadInfo objects
C MinidumpModuleCrashpadInfoWriter | The writer for a MinidumpModuleCrashpadInfo object in a minidump file
C MinidumpModuleListWriter | The writer for a MINIDUMP_MODULE_LIST stream in a minidump file, containing a list of MINIDUMP_MODULE objects
C MinidumpModuleMiscDebugRecordWriter | The writer for an IMAGE_DEBUG_MISC object in a minidump file
C MinidumpModuleWriter | The writer for a MINIDUMP_MODULE object in a minidump file
C MinidumpRVAList | A list of RVA pointers
C MinidumpSimpleStringDictionary | A list of key-value pairs
C MinidumpSimpleStringDictionaryEntry | A key-value pair
C MinidumpSimpleStringDictionaryEntryWriter | The writer for a MinidumpSimpleStringDictionaryEntry object in a minidump file
C MinidumpSimpleStringDictionaryWriter | The writer for a MinidumpSimpleStringDictionary object in a minidump file, containing a list of MinidumpSimpleStringDictionaryEntry objects
C MinidumpSystemInfoWriter | The writer for a MINIDUMP_SYSTEM_INFO stream in a minidump file
C MinidumpThreadListWriter | The writer for a MINIDUMP_THREAD_LIST stream in a minidump file, containing a list of MINIDUMP_THREAD objects
C MinidumpThreadWriter | The writer for a MINIDUMP_THREAD object in a minidump file
C MinidumpUnloadedModuleListWriter | The writer for a MINIDUMP_UNLOADED_MODULE_LIST stream in a minidump file, containing a list of MINIDUMP_UNLOADED_MODULE objects
C MinidumpUnloadedModuleWriter | The writer for a MINIDUMP_UNLOADED_MODULE object in a minidump file
C MinidumpUserStreamWriter | The writer for a MINIDUMP_USER_STREAM in a minidump file
C MinidumpUTF8String | A variable-length UTF-8-encoded string carried within a minidump file
C ModuleSnapshot | An abstract interface to a snapshot representing a code module (binary image) loaded into a snapshot process
►C NotifyServer | A server interface for the `notify` Mach subsystem
C DefaultInterface | A concrete implementation of Interface that provides a default behavior for all `notify` routines
C Interface | An interface that the different request messages that are a part of the `notify` Mach subsystem can be dispatched to
C PEImageAnnotationsReader | A reader of annotations stored in a PE image mapped into another process
C PEImageReader | A reader for PE images mapped into another process
C PEImageResourceReader | A reader for resources stored in PE images mapped into another process
C PointerVector | Allows a `std::vector` to “own” pointer elements stored in it
►C ProcessInfo | Gathers information about a process given its `HANDLE`. This consists primarily of information stored in the Process Environment Block
C Handle |
C Module | Contains information about a module loaded into a process
►C ProcessReader | Accesses information about another process, identified by a Mach task
C Module | Contains information about a module loaded into a process
C Thread | Contains information about a thread that belongs to a task (process)
►C ProcessReaderWin | Accesses information about another process, identified by a `HANDLE`
C Thread | Contains information about a thread that belongs to a process
C ProcessSnapshot | An abstract interface to a snapshot representing the state of a process
C ProcessSnapshotMac | A ProcessSnapshot of a running (or crashed) process running on a macOS system
C ProcessSnapshotMinidump | A ProcessSnapshot based on a minidump file
C ProcessSnapshotWin | A ProcessSnapshot of a running (or crashed) process running on a Windows system
C ProcessSubrangeReader | A wrapper for ProcessReaderWin that only allows a specific subrange to be read from
C PruneCondition | An abstract base class for evaluating crash reports for deletion
C PruneCrashReportThread | A thread that periodically prunes crash reports from the database using the specified condition
C RegistrationRequest | A client registration request
C RegistrationResponse | A client registration response
C RTL_UNLOAD_EVENT_TRACE |
C ScopedForbidReturn | Asserts that a scope must not be exited while unsafe
C ScopedProcessSuspend | Manages the suspension of another process
C ScopedTaskSuspend | Manages the suspension of another task
C Semaphore | An anonymous in-process counting sempahore
C ServerToClientMessage | The response sent back to the client via SendToCrashHandlerServer()
C SessionEndWatcher | Creates a hidden window and waits for a `WM_ENDSESSION` message, indicating that the session is ending and the application should terminate
►C Settings | An interface for accessing and modifying the settings of a CrashReportDatabase
C Data |
C ShutdownRequest | A message only sent to the server by itself to trigger shutdown
►C Signals | Utilities for handling POSIX signals
C OldActions | A group of `struct sigaction` structures corresponding to a set of signals’ previous actions, addressable by signal number
C SnapshotMinidumpMemoryWriter | The base class for writers of memory ranges pointed to by MINIDUMP_MEMORY_DESCRIPTOR objects in a minidump file
C StringFile | A file reader and writer backed by a virtual file, as opposed to a file on disk or other operating system file descriptor-based file
C StringHTTPBodyStream | An implementation of HTTPBodyStream that turns a fixed string into a stream
C SystemSnapshot | An abstract interface to a snapshot representing the state of a system, comprising an operating system, CPU architecture, and various other characteristics
►C TaskMemory | Accesses the memory of another Mach task
C MappedMemory | A memory region mapped from another Mach task
C Thread | Basic thread abstraction. Users should derive from this class and implement ThreadMain()
C ThreadLogMessages | Captures log messages produced on the current thread during an object’s lifetime
C ThreadSnapshot | An abstract interface to a snapshot representing a thread (lightweight process) present in a snapshot process
C ToolSupport | Common functions used by command line tools
►C TSimpleAddressRangeBag | A bag implementation using a fixed amount of storage, so that it does not perform any dynamic allocations for its operations
C Entry | A single entry in the bag
C Iterator | An iterator to traverse all of the active entries in a TSimpleAddressRangeBag
►C TSimpleStringDictionary | A map/dictionary collection implementation using a fixed amount of storage, so that it does not perform any dynamic allocations for its operations
C Entry | A single entry in the map
C Iterator | An iterator to traverse all of the active entries in a TSimpleStringDictionary
C uint128_struct | Stores a 128-bit quantity
►C UniversalMachExcServer | A server interface for the `exc` and `mach_exc` Mach subsystems, unified to handle exceptions delivered to either subsystem, and simplified to have only a single interface method needing implementation
C Interface | An interface that the different request messages that are a part of the `exc` and `mach_exc` Mach subsystems can be dispatched to
C UnloadedModuleSnapshot | Information about an unloaded module that was previously loaded into a snapshot process
C UserMinidumpStream | Information describing a custom user data stream in a minidump
C UUID | A universally unique identifier (UUID)
C WeakFileHandleFileReader | A file reader backed by a FileHandle
C WeakFileHandleFileWriter | A file writer backed by a FileHandle
C WeakStdioFileReader | A file reader backed by a standard input/output `FILE*`
C WeakStdioFileWriter | A file writer backed by a standard input/output `FILE*`
►C WorkerThread | A WorkerThread executes its Delegate's DoWork method repeatedly on a dedicated thread at a set time interval
C Delegate | An interface for doing work on a WorkerThread
C WritableIoVec | A version of `iovec` with a `const` iov_base field
►N logging |
C NtstatusLogMessage |
C CPU_INFORMATION | Information about the CPU (or CPUs) that ran the process that the minidump file contains a snapshot of
C IMAGE_DEBUG_MISC | Miscellaneous debugging record
C MINIDUMP_DIRECTORY | A pointer to a stream within a minidump file
C MINIDUMP_EXCEPTION | Information about an exception that occurred in the process
C MINIDUMP_EXCEPTION_STREAM | Information about the exception that triggered a minidump file’s generation
C MINIDUMP_HANDLE_DESCRIPTOR | Contains the state of an individual system handle at the time the snapshot was taken. This structure is Windows-specific
C MINIDUMP_HANDLE_DESCRIPTOR_2 | Contains the state of an individual system handle at the time the snapshot was taken. This structure is Windows-specific
C MINIDUMP_HEADER | The top-level structure identifying a minidump file
C MINIDUMP_LOCATION_DESCRIPTOR | A pointer to a structure or union within a minidump file
C MINIDUMP_MEMORY_DESCRIPTOR | A pointer to a snapshot of a region of memory contained within a minidump file
C MINIDUMP_MEMORY_INFO | Describes a region of memory
C MINIDUMP_MEMORY_INFO_LIST | Contains a list of memory regions
C MINIDUMP_MEMORY_LIST | Information about memory regions within the process
C MINIDUMP_MISC_INFO | Information about the process that the minidump file contains a snapshot of, as well as the system that hosted that process
C MINIDUMP_MISC_INFO_2 | Information about the process that the minidump file contains a snapshot of, as well as the system that hosted that process
C MINIDUMP_MISC_INFO_3 | Information about the process that the minidump file contains a snapshot of, as well as the system that hosted that process
C MINIDUMP_MISC_INFO_4 | Information about the process that the minidump file contains a snapshot of, as well as the system that hosted that process
C MINIDUMP_MISC_INFO_5 | Information about the process that the minidump file contains a snapshot of, as well as the system that hosted that process
C MINIDUMP_MODULE | Information about a specific module loaded within the process at the time the snapshot was taken
C MINIDUMP_MODULE_LIST | Information about all modules loaded within the process at the time the snapshot was taken
C MINIDUMP_STRING | A variable-length UTF-16-encoded string carried within a minidump file
C MINIDUMP_SYSTEM_INFO | Information about the system that hosted the process that the minidump file contains a snapshot of
C MINIDUMP_THREAD | Information about a specific thread within the process
C MINIDUMP_THREAD_LIST | Information about all threads within the process
C MINIDUMP_UNLOADED_MODULE | Information about a specific module that was recorded as being unloaded at the time the snapshot was taken
C MINIDUMP_UNLOADED_MODULE_LIST | Information about all modules recorded as unloaded when the snapshot was taken
C SYSTEMTIME | Represents a date and time
C TIME_ZONE_INFORMATION | Information about a time zone and its daylight saving rules
C VS_FIXEDFILEINFO | Version information for a file
C XSTATE_CONFIG_FEATURE_MSC_INFO | Information about XSAVE-managed state stored within CPU-specific context structures
C XSTATE_FEATURE | The location of a single state component within an XSAVE area