From 6267e9f3543da62154fb8cda0c9b6a5bd35c02f1 Mon Sep 17 00:00:00 2001 From: Thomas de Zeeuw Date: Tue, 27 Jan 2026 19:39:15 +0100 Subject: [PATCH 1/2] Add siginfo_t::si_status --- src/unix/bsd/netbsdlike/openbsd/mod.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/unix/bsd/netbsdlike/openbsd/mod.rs b/src/unix/bsd/netbsdlike/openbsd/mod.rs index 1711f3fc0a0a1..f0919e948ee75 100644 --- a/src/unix/bsd/netbsdlike/openbsd/mod.rs +++ b/src/unix/bsd/netbsdlike/openbsd/mod.rs @@ -765,6 +765,23 @@ impl siginfo_t { } (*(self as *const siginfo_t).cast::()).value } + + pub unsafe fn si_status(&self) -> c_int { + #[repr(C)] + struct siginfo_proc { + _si_signo: c_int, + _si_errno: c_int, + _si_code: c_int, + #[cfg(target_pointer_width = "64")] + __pad1: Padding, + _pid: crate::pid_t, + _uid: crate::uid_t, + _utime: crate::clock_t, + _stime: crate::clock_t, + _status: crate::c_int, + } + (*(self as *const siginfo_t as *const siginfo_proc))._status + } } s_no_extra_traits! { From 8523238cce6b07ffd7aed07e8e14ef0bf47a72bd Mon Sep 17 00:00:00 2001 From: Thomas de Zeeuw Date: Wed, 28 Jan 2026 00:06:43 +0100 Subject: [PATCH 2/2] Fix fields --- src/unix/bsd/netbsdlike/openbsd/mod.rs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/unix/bsd/netbsdlike/openbsd/mod.rs b/src/unix/bsd/netbsdlike/openbsd/mod.rs index f0919e948ee75..fe17557fc3877 100644 --- a/src/unix/bsd/netbsdlike/openbsd/mod.rs +++ b/src/unix/bsd/netbsdlike/openbsd/mod.rs @@ -770,10 +770,9 @@ impl siginfo_t { #[repr(C)] struct siginfo_proc { _si_signo: c_int, - _si_errno: c_int, _si_code: c_int, - #[cfg(target_pointer_width = "64")] - __pad1: Padding, + _si_errno: c_int, + _pad: Padding<[c_int; SI_PAD]>, _pid: crate::pid_t, _uid: crate::uid_t, _utime: crate::clock_t,