summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Carlier <devnexen@gmail.com>2021-07-31 18:49:01 +0100
committerDavid Carlier <devnexen@gmail.com>2021-07-31 18:52:06 +0100
commitf7cfa2e7c31b525f21f7fc6b76009d7418390469 (patch)
tree7b9fcc2fd36c3065273bfb9f24c70c501700430c
parenta1e0f47bceae66eb6dcc171ef261d46162df93ea (diff)
downloadrust-libc-f7cfa2e7c31b525f21f7fc6b76009d7418390469.tar.gz
netbsd add proper flags for kinfo_vmentry lookups
-rw-r--r--libc-test/semver/netbsd.txt11
-rw-r--r--src/unix/bsd/netbsdlike/netbsd/mod.rs14
2 files changed, 25 insertions, 0 deletions
diff --git a/libc-test/semver/netbsd.txt b/libc-test/semver/netbsd.txt
index 483c780416..d4d83a1d5b 100644
--- a/libc-test/semver/netbsd.txt
+++ b/libc-test/semver/netbsd.txt
@@ -507,6 +507,15 @@ KERN_URND
KERN_VERIEXEC
KERN_VERSION
KERN_VNODE
+KVME_FLAG_COW
+KVME_FLAG_GROWS_DOWN
+KVME_FLAG_GROWS_UP
+KVME_FLAG_NEEDS_COPY
+KVME_FLAG_NOCOREDUMP
+KVME_FLAG_PAGEABLE
+KVME_PROT_EXEC
+KVME_PROT_READ
+KVME_PROT_WRITE
LC_ALL
LC_ALL_MASK
LC_COLLATE
@@ -904,6 +913,8 @@ UT_HOSTSIZE
UT_LINESIZE
UT_NAMESIZE
VDSUSP
+VM_PROC
+VM_PROC_MAP
VSTATUS
WEXITED
WNOWAIT
diff --git a/src/unix/bsd/netbsdlike/netbsd/mod.rs b/src/unix/bsd/netbsdlike/netbsd/mod.rs
index 9d47c0ac1f..540acb3b34 100644
--- a/src/unix/bsd/netbsdlike/netbsd/mod.rs
+++ b/src/unix/bsd/netbsdlike/netbsd/mod.rs
@@ -1735,6 +1735,8 @@ pub const KERN_PROC_NARGV: ::c_int = 2;
pub const KERN_PROC_ENV: ::c_int = 3;
pub const KERN_PROC_NENV: ::c_int = 4;
pub const KERN_PROC_PATHNAME: ::c_int = 5;
+pub const VM_PROC: ::c_int = 16;
+pub const VM_PROC_MAP: ::c_int = 1;
pub const EAI_AGAIN: ::c_int = 2;
pub const EAI_BADFLAGS: ::c_int = 3;
@@ -1836,6 +1838,18 @@ pub const SF_SNAPSHOT: ::c_ulong = 0x00200000;
pub const SF_LOG: ::c_ulong = 0x00400000;
pub const SF_SNAPINVAL: ::c_ulong = 0x00800000;
+// sys/sysctl.h
+pub const KVME_PROT_READ: ::c_int = 0x00000001;
+pub const KVME_PROT_WRITE: ::c_int = 0x00000002;
+pub const KVME_PROT_EXEC: ::c_int = 0x00000004;
+
+pub const KVME_FLAG_COW: ::c_int = 0x00000001;
+pub const KVME_FLAG_NEEDS_COPY: ::c_int = 0x00000002;
+pub const KVME_FLAG_NOCOREDUMP: ::c_int = 0x000000004;
+pub const KVME_FLAG_PAGEABLE: ::c_int = 0x000000008;
+pub const KVME_FLAG_GROWS_UP: ::c_int = 0x000000010;
+pub const KVME_FLAG_GROWS_DOWN: ::c_int = 0x000000020;
+
const_fn! {
{const} fn _ALIGN(p: usize) -> usize {
(p + _ALIGNBYTES) & !_ALIGNBYTES