Man Linux: Main Page and Category List

NAME

       umask - set and get the file mode creation mask

SYNOPSIS

       #include <sys/stat.h>

       mode_t umask(mode_t cmask);

DESCRIPTION

       The  umask() function shall set the process’ file mode creation mask to
       cmask and return  the  previous  value  of  the  mask.  Only  the  file
       permission  bits  of  cmask (see <sys/stat.h>) are used; the meaning of
       the other bits is implementation-defined.

       The process’ file mode creation mask is used  during  open(),  creat(),
       mkdir(),  and mkfifo() to turn off permission bits in the mode argument
       supplied. Bit positions that are set in cmask are cleared in  the  mode
       of the created file.

RETURN VALUE

       The  file permission bits in the value returned by umask() shall be the
       previous value of the file mode creation mask. The state of  any  other
       bits  in  that  value  is unspecified, except that a subsequent call to
       umask() with the returned value as cmask shall leave the state  of  the
       mask  the  same  as  its  state  before  the  first call, including any
       unspecified use of those bits.

ERRORS

       No errors are defined.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       None.

RATIONALE

       Unsigned argument and return types  for  umask()  were  proposed.   The
       return type and the argument were both changed to mode_t.

       Historical  implementations  have  made use of additional bits in cmask
       for their implementation-defined purposes. The  addition  of  the  text
       that  the  meaning of other bits of the field is implementation-defined
       permits  these  implementations  to   conform   to   this   volume   of
       IEEE Std 1003.1-2001.

FUTURE DIRECTIONS

       None.

SEE ALSO

       creat()  , mkdir() , mkfifo() , open() , the Base Definitions volume of
       IEEE Std 1003.1-2001, <sys/stat.h>, <sys/types.h>

COPYRIGHT

       Portions of this text are reprinted and reproduced in  electronic  form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       -- Portable Operating System Interface (POSIX),  The  Open  Group  Base
       Specifications  Issue  6,  Copyright  (C) 2001-2003 by the Institute of
       Electrical and Electronics Engineers, Inc and The Open  Group.  In  the
       event of any discrepancy between this version and the original IEEE and
       The Open Group Standard, the original IEEE and The Open Group  Standard
       is  the  referee document. The original Standard can be obtained online
       at http://www.opengroup.org/unix/online.html .