The
getmode
function
returns a copy of the file permission bits
mode
as altered by the values pointed to by
set.
While only the mode bits are altered, other parts of the file mode
may be examined.
The
setmode
function
takes an absolute (octal) or symbolic value, as described in
chmod(1),
as an argument
and returns a pointer to mode values to be supplied to
getmode.
Because some of the symbolic values are relative to the file
creation mask,
setmode
may call
umask(2).
If this occurs, the file creation mask will be restored before
setmode
returns.
If the calling program changes the value of its file creation mask
after calling
setmode,
setmode
must be called again if
getmode
is to modify future file modes correctly.
If the mode passed to
setmode
is invalid or if memory cannot be allocated for the return value,
setmode
returns
NULL.
The value returned from
setmode
is obtained from
malloc
and should be returned to the system with
free
when the program is done with it, generally after a call to
getmode.