From da1568ac035baa54c2e0c8300c2631a8d69a514e Mon Sep 17 00:00:00 2001 From: "ted.mielczarek" Date: Fri, 20 Jul 2012 12:38:31 +0000 Subject: Move minidump_extension_linux.h contents into minidump_format.h R=mark at https://breakpad.appspot.com/415002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@991 4c0a9323-5329-0410-9bdc-e9ce6186880e --- src/google_breakpad/common/minidump_format.h | 31 ++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) (limited to 'src/google_breakpad/common') diff --git a/src/google_breakpad/common/minidump_format.h b/src/google_breakpad/common/minidump_format.h index 94dd706d..0fe7b566 100644 --- a/src/google_breakpad/common/minidump_format.h +++ b/src/google_breakpad/common/minidump_format.h @@ -330,9 +330,19 @@ typedef enum { MD_LAST_RESERVED_STREAM = 0x0000ffff, /* Breakpad extension types. 0x4767 = "Gg" */ - MD_BREAKPAD_INFO_STREAM = 0x47670001, /* MDRawBreakpadInfo */ + MD_BREAKPAD_INFO_STREAM = 0x47670001, /* MDRawBreakpadInfo */ MD_ASSERTION_INFO_STREAM = 0x47670002, /* MDRawAssertionInfo */ - MD_CUSTOM_DATA_STREAM = 0x47670003 /* MDRawCustomDataStream */ + /* These are additional minidump stream values which are specific to + * the linux breakpad implementation. */ + MD_LINUX_CPU_INFO = 0x47670003, /* /proc/cpuinfo */ + MD_LINUX_PROC_STATUS = 0x47670004, /* /proc/$x/status */ + MD_LINUX_LSB_RELEASE = 0x47670005, /* /etc/lsb-release */ + MD_LINUX_CMD_LINE = 0x47670006, /* /proc/$x/cmdline */ + MD_LINUX_ENVIRON = 0x47670007, /* /proc/$x/environ */ + MD_LINUX_AUXV = 0x47670008, /* /proc/$x/auxv */ + MD_LINUX_MAPS = 0x47670009, /* /proc/$x/maps */ + MD_LINUX_DSO_DEBUG = 0x4767000A, /* MDRawDebug */ + MD_CUSTOM_DATA_STREAM = 0x4767000B /* MDRawCustomDataStream */ } MDStreamType; /* MINIDUMP_STREAM_TYPE */ @@ -791,6 +801,23 @@ typedef enum { MD_ASSERTION_INFO_TYPE_PURE_VIRTUAL_CALL } MDAssertionInfoData; +/* These structs are used to store the DSO debug data in Linux minidumps, + * which is necessary for converting minidumps to usable coredumps. */ +typedef struct { + void* addr; + MDRVA name; + void* ld; +} MDRawLinkMap; + +typedef struct { + u_int32_t version; + MDRVA map; + u_int32_t dso_count; + void* brk; + void* ldbase; + void* dynamic; +} MDRawDebug; + #if defined(_MSC_VER) #pragma warning(pop) #endif /* _MSC_VER */ -- cgit v1.2.1