Provided by: manpages-posix-dev_2.16-1_all bug

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 .