summaryrefslogtreecommitdiff
path: root/src/sys/resource.rs
diff options
context:
space:
mode:
authorSachin Cherian <sachinctl@protonmail.com>2021-12-24 11:23:52 +0530
committerSachin Cherian <sachinctl@protonmail.com>2021-12-24 11:23:52 +0530
commita0e2f199f5c9031f28c0174e43e21276bd595808 (patch)
tree47d9627f8f8afa103f8d631b2003f51eed8f7a25 /src/sys/resource.rs
parent6c6c576dc043aeee5a814490ec8c4665283580ae (diff)
downloadnix-a0e2f199f5c9031f28c0174e43e21276bd595808.zip
Add NetBSD configuration for supported process resources
Diffstat (limited to 'src/sys/resource.rs')
-rw-r--r--src/sys/resource.rs36
1 files changed, 26 insertions, 10 deletions
diff --git a/src/sys/resource.rs b/src/sys/resource.rs
index 80473e58..7f2927b4 100644
--- a/src/sys/resource.rs
+++ b/src/sys/resource.rs
@@ -24,12 +24,15 @@ cfg_if! {
}
libc_enum! {
+ /// Types of process resources.
+ ///
/// The Resource enum is platform dependent. Check different platform
- /// manuals for more details. Some platform links has been provided for
- /// earier reference (non-exhaustive).
+ /// manuals for more details. Some platform links have been provided for
+ /// easier reference (non-exhaustive).
///
/// * [Linux](https://man7.org/linux/man-pages/man2/getrlimit.2.html)
/// * [FreeBSD](https://www.freebsd.org/cgi/man.cgi?query=setrlimit)
+ /// * [NetBSD](https://man.netbsd.org/setrlimit.2)
// linux-gnu uses u_int as resource enum, which is implemented in libc as
// well.
@@ -49,11 +52,7 @@ libc_enum! {
), repr(i32))]
#[non_exhaustive]
pub enum Resource {
- #[cfg(not(any(
- target_os = "freebsd",
- target_os = "netbsd",
- target_os = "openbsd"
- )))]
+ #[cfg(not(any(target_os = "freebsd", target_os = "netbsd", target_os = "openbsd")))]
#[cfg_attr(docsrs, doc(cfg(all())))]
/// The maximum amount (in bytes) of virtual memory the process is
/// allowed to map.
@@ -83,7 +82,13 @@ libc_enum! {
/// this process may establish.
RLIMIT_LOCKS,
- #[cfg(any(target_os = "android", target_os = "freebsd", target_os = "openbsd", target_os = "linux"))]
+ #[cfg(any(
+ target_os = "android",
+ target_os = "freebsd",
+ target_os = "openbsd",
+ target_os = "linux",
+ target_os = "netbsd"
+ ))]
#[cfg_attr(docsrs, doc(cfg(all())))]
/// The maximum size (in bytes) which a process may lock into memory
/// using the mlock(2) system call.
@@ -101,7 +106,13 @@ libc_enum! {
/// setpriority or nice.
RLIMIT_NICE,
- #[cfg(any(target_os = "android", target_os = "freebsd", target_os = "openbsd", target_os = "linux"))]
+ #[cfg(any(
+ target_os = "android",
+ target_os = "freebsd",
+ target_os = "netbsd",
+ target_os = "openbsd",
+ target_os = "linux",
+ ))]
#[cfg_attr(docsrs, doc(cfg(all())))]
/// The maximum number of simultaneous processes for this user id.
RLIMIT_NPROC,
@@ -112,7 +123,12 @@ libc_enum! {
/// create.
RLIMIT_NPTS,
- #[cfg(any(target_os = "android", target_os = "freebsd", target_os = "openbsd", target_os = "linux"))]
+ #[cfg(any(target_os = "android",
+ target_os = "freebsd",
+ target_os = "netbsd",
+ target_os = "openbsd",
+ target_os = "linux",
+ ))]
#[cfg_attr(docsrs, doc(cfg(all())))]
/// When there is memory pressure and swap is available, prioritize
/// eviction of a process' resident pages beyond this amount (in bytes).