summaryrefslogtreecommitdiff
path: root/src/unix/linux_like
diff options
context:
space:
mode:
authorJosh Triplett <josh@joshtriplett.org>2020-08-09 16:35:24 -0700
committerJosh Triplett <josh@joshtriplett.org>2020-08-09 16:40:54 -0700
commit631da86c92227bd601cb0904c09d619feb74ab15 (patch)
tree9ea4e4d4e50881520750aa05a7cd1fb3da6e14f7 /src/unix/linux_like
parentab3c229140cc6a609c52fd732ea76bf69f9a5855 (diff)
downloadrust-libc-631da86c92227bd601cb0904c09d619feb74ab15.tar.gz
Add W_EXITCODE to construct an exit code
On Linux, `sys/wait.h` defines a `W_EXITCODE` macro to construct an exit code from a return value and a signal number. Provide an equivalent function.
Diffstat (limited to 'src/unix/linux_like')
-rw-r--r--src/unix/linux_like/mod.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/unix/linux_like/mod.rs b/src/unix/linux_like/mod.rs
index c5394f69b8..6593a6445a 100644
--- a/src/unix/linux_like/mod.rs
+++ b/src/unix/linux_like/mod.rs
@@ -1254,6 +1254,10 @@ f! {
(status & 0x80) != 0
}
+ pub fn W_EXITCODE(ret: ::c_int, sig: ::c_int) -> ::c_int {
+ (ret << 8) | sig
+ }
+
pub fn QCMD(cmd: ::c_int, type_: ::c_int) -> ::c_int {
(cmd << 8) | (type_ & 0x00ff)
}