summaryrefslogtreecommitdiffstats
path: root/third_party/rust/minidump-common
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/minidump-common')
-rw-r--r--third_party/rust/minidump-common/.cargo-checksum.json2
-rw-r--r--third_party/rust/minidump-common/Cargo.toml4
-rw-r--r--third_party/rust/minidump-common/src/errors/macos.rs25
-rw-r--r--third_party/rust/minidump-common/src/format.rs24
4 files changed, 47 insertions, 8 deletions
diff --git a/third_party/rust/minidump-common/.cargo-checksum.json b/third_party/rust/minidump-common/.cargo-checksum.json
index 1ddebcac04..84e8ed9037 100644
--- a/third_party/rust/minidump-common/.cargo-checksum.json
+++ b/third_party/rust/minidump-common/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{"Cargo.toml":"e0f49679fe070718b42d9e9bed49860a29471f6e2854a501dceba286301888b1","LICENSE":"06de63df29199a394442b57a28e886059ddc940973e10646877a0793fd53e2c9","README.md":"4c2a1448aab9177fd5f033faaf704af7bb222bf0804079fd3cff90fa1df4b812","src/errors/linux.rs":"df743ac9478e39f8a577f4f10f2d1317babad7b7c0d26cdbba2ea6b5426f4126","src/errors/macos.rs":"02ac6427f376e6f587c1f3e4d5df2a72e4cf13c4858409e73f26d47ad8e54340","src/errors/mod.rs":"f224af66124fd31a040c8da11bbab7b7795b48e4edea76e01c1f4dee537ea38a","src/errors/windows.rs":"0567af7bfac3ae2a8dff418e10873d8a5bf15a8b8ac6892c5ffdab08ec3ac901","src/format.rs":"f453ada36ffcb986a62391f9451b7826bdde9d5024beb11a495d1ed1e93bb52c","src/lib.rs":"0900c00594b3c386b86127055889006f0d7d0004b08455fadb0e60d55a469cab","src/traits.rs":"93127ad69a849325ed66a0626e0bdae05868488f81c539d35c71a7bfbb9e51ac","src/utils.rs":"17e8777b05998a8149fc5168af3bca1e0f9aeffe28cb3d6dbfb89c546f75e5ed"},"package":"3dbc11dfb55b3b7b5684fb16d98e0fc9d1e93a64d6b00bf383eabfc4541aaac2"} \ No newline at end of file
+{"files":{"Cargo.toml":"32470c1f1471a46161eb9fda47e6e7d50e2615bfb0722bcd9355fbb90174319e","LICENSE":"06de63df29199a394442b57a28e886059ddc940973e10646877a0793fd53e2c9","README.md":"4c2a1448aab9177fd5f033faaf704af7bb222bf0804079fd3cff90fa1df4b812","src/errors/linux.rs":"df743ac9478e39f8a577f4f10f2d1317babad7b7c0d26cdbba2ea6b5426f4126","src/errors/macos.rs":"4516aaeb7abf6209f5cd94e86a1e55a9675ef77262f52e3b2d5596fd4b858458","src/errors/mod.rs":"f224af66124fd31a040c8da11bbab7b7795b48e4edea76e01c1f4dee537ea38a","src/errors/windows.rs":"0567af7bfac3ae2a8dff418e10873d8a5bf15a8b8ac6892c5ffdab08ec3ac901","src/format.rs":"4d9baaa3b3b52b4311efaadb12921088141becba8890ae977f0a2807eaa7f820","src/lib.rs":"0900c00594b3c386b86127055889006f0d7d0004b08455fadb0e60d55a469cab","src/traits.rs":"93127ad69a849325ed66a0626e0bdae05868488f81c539d35c71a7bfbb9e51ac","src/utils.rs":"17e8777b05998a8149fc5168af3bca1e0f9aeffe28cb3d6dbfb89c546f75e5ed"},"package":"1bb6eaf88cc770fa58e6ae721cf2e40c2ca6a4c942ae8c7aa324d680bd3c6717"} \ No newline at end of file
diff --git a/third_party/rust/minidump-common/Cargo.toml b/third_party/rust/minidump-common/Cargo.toml
index 798d7a27d3..416d3b703e 100644
--- a/third_party/rust/minidump-common/Cargo.toml
+++ b/third_party/rust/minidump-common/Cargo.toml
@@ -12,7 +12,7 @@
[package]
edition = "2018"
name = "minidump-common"
-version = "0.19.1"
+version = "0.21.1"
authors = ["Ted Mielczarek <ted@mielczarek.org>"]
description = "Some common types for working with minidump files."
homepage = "https://github.com/rust-minidump/rust-minidump"
@@ -42,7 +42,7 @@ version = "0.2"
version = "0.2"
[dependencies.scroll]
-version = "0.11.0"
+version = "0.12.0"
features = ["derive"]
[dependencies.smart-default]
diff --git a/third_party/rust/minidump-common/src/errors/macos.rs b/third_party/rust/minidump-common/src/errors/macos.rs
index d27c772e2a..667bb3919c 100644
--- a/third_party/rust/minidump-common/src/errors/macos.rs
+++ b/third_party/rust/minidump-common/src/errors/macos.rs
@@ -330,7 +330,7 @@ pub enum ExceptionCodeMacResourceThreadsFlavor {
///
/// See the [osfmk/kern/exc_guard.h][header] header in Apple's kernel sources
///
-/// [header]: https://github.com/apple/darwin-xnu/blob/main/osfmk/kern/exc_guard.h
+/// [header]: https://github.com/apple-oss-distributions/xnu/blob/main/osfmk/kern/exc_guard.h
#[derive(Copy, Clone, PartialEq, Eq, Debug, FromPrimitive)]
pub enum ExceptionCodeMacGuardType {
GUARD_TYPE_NONE = 0,
@@ -339,18 +339,21 @@ pub enum ExceptionCodeMacGuardType {
GUARD_TYPE_USER = 3,
GUARD_TYPE_VN = 4,
GUARD_TYPE_VIRT_MEMORY = 5,
+ GUARD_TYPE_REJECTED_SC = 6,
}
/// Mac/iOS Mach port guard exception flavors
///
/// See the [osfmk/mach/port.h][header] header in Apple's kernel sources
///
-/// [header]: https://github.com/apple/darwin-xnu/blob/main/osfmk/mach/port.h
+/// [header]: https://github.com/apple-oss-distributions/xnu/blob/main/osfmk/mach/port.h
#[derive(Copy, Clone, PartialEq, Eq, Debug, FromPrimitive)]
pub enum ExceptionCodeMacGuardMachPortFlavor {
- GUARD_EXC_DESTROY = 0x00000001,
- GUARD_EXC_MOD_REFS = 0x00000002,
- GUARD_EXC_SET_CONTEXT = 0x00000004,
+ GUARD_EXC_DESTROY = 1,
+ GUARD_EXC_MOD_REFS = 2,
+ GUARD_EXC_INVALID_OPTIONS = 3,
+ GUARD_EXC_SET_CONTEXT = 4,
+ GUARD_EXC_THREAD_SET_STATE = 5,
GUARD_EXC_UNGUARDED = 0x00000008,
GUARD_EXC_INCORRECT_GUARD = 0x00000010,
GUARD_EXC_IMMOVABLE = 0x00000020,
@@ -371,6 +374,8 @@ pub enum ExceptionCodeMacGuardMachPortFlavor {
GUARD_EXC_RCV_GUARDED_DESC = 0x00100000,
GUARD_EXC_MOD_REFS_NON_FATAL = 0x00200000,
GUARD_EXC_IMMOVABLE_NON_FATAL = 0x00400000,
+ GUARD_EXC_REQUIRE_REPLY_PORT_SEMANTICS = 0x00800000,
+ GUARD_EXC_EXCEPTION_BEHAVIOR_ENFORCE = 0x01000000,
}
/// Mac/iOS fd guard exception flavors
@@ -414,3 +419,13 @@ pub enum ExceptionCodeMacGuardVNFlavor {
pub enum ExceptionCodeMacGuardVirtMemoryFlavor {
GUARD_EXC_DEALLOC_GAP = 0x00000001,
}
+
+/// Mac/iOS rejected syscall guard exception flavors
+///
+/// See the [osfmk/kern/exc_guard.h][header] header in Apple's kernel sources
+///
+/// [header]: https://github.com/apple-oss-distributions/xnu/blob/1031c584a5e37aff177559b9f69dbd3c8c3fd30a/osfmk/kern/exc_guard.h#L149-L163
+#[derive(Copy, Clone, PartialEq, Eq, Debug, FromPrimitive)]
+pub enum ExceptionCodeMacGuardRejecteSysCallFlavor {
+ GUARD_EXC_MACH_TRAP = 0x00000000,
+}
diff --git a/third_party/rust/minidump-common/src/format.rs b/third_party/rust/minidump-common/src/format.rs
index 2b610ef559..d6a8f629b5 100644
--- a/third_party/rust/minidump-common/src/format.rs
+++ b/third_party/rust/minidump-common/src/format.rs
@@ -2552,3 +2552,27 @@ pub struct MINIDUMP_HANDLE_DATA_STREAM {
/// Reserved for future use; must be zero.
pub reserved: u32,
}
+
+#[derive(Debug, Clone, Pread, Pwrite, SizeWith)]
+pub struct MINIDUMP_THREAD_INFO {
+ /// Thread identifier
+ pub thread_id: u32,
+ /// Thread state flags
+ pub dump_flags: u32,
+ /// HRESULT value of dump status
+ pub dump_error: u32,
+ /// The thread's exit code
+ pub exit_status: u32,
+ /// UTC time the thread was created
+ pub create_time: u64,
+ /// UTC time the thread exited
+ pub exit_time: u64,
+ /// Time executed in kernel mode
+ pub kernel_time: u64,
+ /// Time executed in user mode
+ pub user_time: u64,
+ /// Start address of the thread
+ pub start_address: u64,
+ /// Processor affinity mask
+ pub affinity: u64,
+}