UMASK(2)                   Linux Programmer's Manual                  UMASK(2)
NAME
       umask - set file mode creation mask

SYNOPSIS
       #include <sys/types.h>
       #include <sys/stat.h>

       mode_t umask(mode_t mask);

DESCRIPTION
       umask()  sets  the calling process's file mode creation mask (umask) to
       mask & 0777.

       The umask is used by open(2), mkdir(2), and  other  system  calls  that
       create files to modify the permissions placed on newly created files or
       directories.  Specifically, permissions in the  umask  are  turned  off
       from the mode argument to open(2) and mkdir(2).

       The  constants  that should be used to specify mask are described under
       stat(2).

       The typical default value for the process  umask  is  S_IWGRP | S_IWOTH
       (octal  022).   In the usual case where the mode argument to open(2) is
       specified as:

           S_IRUSR | S_IWUSR | S_IRGRP | S_IWRGRP | S_IROTH | S_IWOTH

       (octal 0666) when creating a new file, the permissions on the resulting
       file will be:

           S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH

       (because 0666 & ~022 = 0644; i.e., rw-r--r--).

RETURN VALUE
       This  system call always succeeds and the previous value of the mask is
       returned.

NOTES
       A child process created via fork(2) inherits its parent's  umask.   The
       umask is left unchanged by execve(2).

CONFORMING TO
       SVr4, 4.3BSD, POSIX.1-2001.

SEE ALSO
       chmod(2), mkdir(2), open(2), stat(2)

Linux                             2006-05-13                          UMASK(2)