diff options
Diffstat (limited to 'third_party/rust/minidump-common')
-rw-r--r-- | third_party/rust/minidump-common/.cargo-checksum.json | 2 | ||||
-rw-r--r-- | third_party/rust/minidump-common/Cargo.toml | 4 | ||||
-rw-r--r-- | third_party/rust/minidump-common/src/errors/macos.rs | 25 | ||||
-rw-r--r-- | third_party/rust/minidump-common/src/format.rs | 24 |
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, +} |