summaryrefslogtreecommitdiffstats
path: root/third_party/rust/rustix/src/process/umask.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/rustix/src/process/umask.rs')
-rw-r--r--third_party/rust/rustix/src/process/umask.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/third_party/rust/rustix/src/process/umask.rs b/third_party/rust/rustix/src/process/umask.rs
new file mode 100644
index 0000000000..01779d7ed0
--- /dev/null
+++ b/third_party/rust/rustix/src/process/umask.rs
@@ -0,0 +1,21 @@
+//! Umask support.
+
+#[cfg(feature = "fs")]
+use crate::backend;
+#[cfg(feature = "fs")]
+use crate::fs::Mode;
+
+/// `umask(mask)`—Set the process file creation mask.
+///
+/// # References
+/// - [POSIX]
+/// - [Linux]
+///
+/// [POSIX]: https://pubs.opengroup.org/onlinepubs/9699919799/functions/umask.html
+/// [Linux]: https://man7.org/linux/man-pages/man2/umask.2.html
+#[cfg(feature = "fs")]
+#[cfg_attr(doc_cfg, doc(cfg(feature = "fs")))]
+#[inline]
+pub fn umask(mask: Mode) -> Mode {
+ backend::process::syscalls::umask(mask)
+}