summaryrefslogtreecommitdiff
path: root/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
diff options
context:
space:
mode:
authorSteve Lau <stevelauc@outlook.com>2023-05-06 16:36:01 +0800
committerSteve Lau <stevelauc@outlook.com>2023-05-06 16:36:01 +0800
commit044941617a2695ea0050f682a2d4a5e57a65799d (patch)
tree34af43f1290e752fe78805b943e0d3b1a896b47a /src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
parent79b7d3c7520a29c98f346285b1184091fd36fff2 (diff)
downloadrust-libc-044941617a2695ea0050f682a2d4a5e57a65799d.tar.gz
add major/minor on BSDs/illumos
Diffstat (limited to 'src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs')
-rw-r--r--src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
index 5cd4eff26f..10fcaa03a4 100644
--- a/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
+++ b/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
@@ -462,6 +462,16 @@ safe_f! {
}
}
+f! {
+ pub fn major(dev: ::dev_t) -> ::c_int {
+ (((dev >> 32) & 0xffffff00) | ((dev >> 8) & 0xff)) as ::c_int
+ }
+
+ pub fn minor(dev: ::dev_t) -> ::c_int {
+ (((dev >> 24) & 0xff00) | (dev & 0xffff00ff)) as ::c_int
+ }
+}
+
extern "C" {
pub fn setgrent();
pub fn mprotect(addr: *mut ::c_void, len: ::size_t, prot: ::c_int) -> ::c_int;