summaryrefslogtreecommitdiffstats
path: root/man2/umask.2
diff options
context:
space:
mode:
Diffstat (limited to 'man2/umask.2')
-rw-r--r--man2/umask.2149
1 files changed, 0 insertions, 149 deletions
diff --git a/man2/umask.2 b/man2/umask.2
deleted file mode 100644
index bfea2e6..0000000
--- a/man2/umask.2
+++ /dev/null
@@ -1,149 +0,0 @@
-.\" Copyright (c) 2006, 2008, Michael Kerrisk <mtk.manpages@gmail.com>
-.\" (A few fragments remain from an earlier (1992) version written in
-.\" 1992 by Drew Eckhardt <drew@cs.colorado.edu>.)
-.\"
-.\" SPDX-License-Identifier: Linux-man-pages-copyleft
-.\"
-.\" Modified by Michael Haardt <michael@moria.de>
-.\" Modified Sat Jul 24 12:51:53 1993 by Rik Faith <faith@cs.unc.edu>
-.\" Modified Tue Oct 22 22:39:04 1996 by Eric S. Raymond <esr@thyrsus.com>
-.\" Modified Thu May 1 06:05:54 UTC 1997 by Nicolás Lichtmaier
-.\" <nick@debian.com> with Lars Wirzenius <liw@iki.fi> suggestion
-.\" 2006-05-13, mtk, substantial rewrite of description of 'mask'
-.\" 2008-01-09, mtk, a few rewrites and additions.
-.TH umask 2 2023-10-31 "Linux man-pages 6.7"
-.SH NAME
-umask \- set file mode creation mask
-.SH LIBRARY
-Standard C library
-.RI ( libc ", " \-lc )
-.SH SYNOPSIS
-.nf
-.B #include <sys/stat.h>
-.P
-.BI "mode_t umask(mode_t " mask );
-.fi
-.SH DESCRIPTION
-.BR umask ()
-sets the calling process's file mode creation mask (umask) to
-.I mask
-& 0777 (i.e., only the file permission bits of
-.I mask
-are used), and returns the previous value of the mask.
-.P
-The umask is used by
-.BR open (2),
-.BR mkdir (2),
-and other system calls that create files
-.\" e.g., mkfifo(), creat(), mknod(), sem_open(), mq_open(), shm_open()
-.\" but NOT the System V IPC *get() calls
-to modify the permissions placed on newly created files or directories.
-Specifically, permissions in the umask are turned off from
-the
-.I mode
-argument to
-.BR open (2)
-and
-.BR mkdir (2).
-.P
-Alternatively, if the parent directory has a default ACL (see
-.BR acl (5)),
-the umask is ignored, the default ACL is inherited,
-the permission bits are set based on the inherited ACL,
-and permission bits absent in the
-.I mode
-argument are turned off.
-For example, the following default ACL is equivalent to a umask of 022:
-.P
-.in +4n
-.EX
-u::rwx,g::r-x,o::r-x
-.EE
-.in
-.P
-Combining the effect of this default ACL with a
-.I mode
-argument of 0666 (rw-rw-rw-), the resulting file permissions would be 0644
-(rw-r--r--).
-.P
-The constants that should be used to specify
-.I mask
-are described in
-.BR inode (7).
-.P
-The typical default value for the process umask is
-.BR S_IWGRP " | " S_IWOTH
-(octal 022).
-In the usual case where the
-.I mode
-argument to
-.BR open (2)
-is specified as:
-.P
-.in +4n
-.EX
-.BR S_IRUSR " | " S_IWUSR " | " S_IRGRP " | " S_IWGRP " | " S_IROTH " | " S_IWOTH
-.EE
-.in
-.P
-(octal 0666) when creating a new file, the permissions on the
-resulting file will be:
-.P
-.in +4n
-.EX
-.BR S_IRUSR " | " S_IWUSR " | " S_IRGRP " | " S_IROTH
-.EE
-.in
-.P
-(because 0666 & \[ti]022 = 0644; i.e. rw\-r\-\-r\-\-).
-.SH RETURN VALUE
-This system call always succeeds and the previous value of the mask
-is returned.
-.SH STANDARDS
-POSIX.1-2008.
-.SH HISTORY
-POSIX.1-2001, SVr4, 4.3BSD.
-.SH NOTES
-A child process created via
-.BR fork (2)
-inherits its parent's umask.
-The umask is left unchanged by
-.BR execve (2).
-.P
-It is impossible to use
-.BR umask ()
-to fetch a process's umask without at the same time changing it.
-A second call to
-.BR umask ()
-would then be needed to restore the umask.
-The nonatomicity of these two steps provides the potential
-for races in multithreaded programs.
-.P
-Since Linux 4.7, the umask of any process can be viewed via the
-.I Umask
-field of
-.IR /proc/ pid /status .
-Inspecting this field in
-.I /proc/self/status
-allows a process to retrieve its umask without at the same time changing it.
-.P
-The umask setting also affects the permissions assigned to POSIX IPC objects
-.RB ( mq_open (3),
-.BR sem_open (3),
-.BR shm_open (3)),
-FIFOs
-.RB ( mkfifo (3)),
-and UNIX domain sockets
-.RB ( unix (7))
-created by the process.
-The umask does not affect the permissions assigned
-to System\ V IPC objects created by the process (using
-.BR msgget (2),
-.BR semget (2),
-.BR shmget (2)).
-.SH SEE ALSO
-.BR chmod (2),
-.BR mkdir (2),
-.BR open (2),
-.BR stat (2),
-.BR acl (5)