mirror of
https://github.com/GnoConsortium/gno.git
synced 2024-12-27 16:31:19 +00:00
108 lines
3.8 KiB
Groff
108 lines
3.8 KiB
Groff
.\" Copyright (c) 1980, 1991, 1993
|
|
.\" The Regents of the University of California. All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
.\" must display the following acknowledgement:
|
|
.\" This product includes software developed by the University of
|
|
.\" California, Berkeley and its contributors.
|
|
.\" 4. Neither the name of the University nor the names of its contributors
|
|
.\" may be used to endorse or promote products derived from this software
|
|
.\" without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" @(#)umask.2 8.1 (Berkeley) 6/4/93
|
|
.\"
|
|
.\" .TH UMASK 2 GNO "System Calls" "14 December 1996"
|
|
.TH UMASK 2 "14 December 1996" GNO "System Calls"
|
|
.SH NAME
|
|
.BR umask
|
|
\- set file creation mode mask
|
|
.SH SYNOPSIS
|
|
.nf
|
|
#include <sys/stat.h>
|
|
|
|
mode_t umask (mode_t \fInumask\fR);
|
|
.SH DESCRIPTION
|
|
The
|
|
.BR umask
|
|
routine sets the process's file mode creation mask to
|
|
.I numask
|
|
and returns the previous value of the mask. The 9 low-order
|
|
access permission
|
|
bits of
|
|
.I numask
|
|
are used by system calls, including
|
|
.BR open (2),
|
|
.BR mkdir (2),
|
|
and
|
|
.BR mkfifo (2),
|
|
to turn off corresponding bits
|
|
requested in file mode.
|
|
(See
|
|
.BR chmod (2)).
|
|
This clearing allows each user to restrict the default access
|
|
to his files.
|
|
.LP
|
|
The default mask value is S_IWGRP|S_IWOTH (022, write access for the
|
|
owner only).
|
|
Child processes inherit the mask of the calling process.
|
|
.LP
|
|
Because the GNO kernel does not currently implement a mask, the mask
|
|
value is maintained into child processes through the environment
|
|
variable
|
|
.BR UMASK ,
|
|
which is assumed to be a string representing an octal mask value. For
|
|
shells such as
|
|
.BR gsh (1)
|
|
which don't support a umask builtin command, the user's default mask may
|
|
be controlled by setting the
|
|
.BR UMASK
|
|
environment variable.
|
|
.SH RETURN VALUES
|
|
The previous value of the file mode mask is returned by the call.
|
|
.SH ERRORS
|
|
The
|
|
.BR umask
|
|
function will never return an error condition, however it is possible
|
|
that the
|
|
.BR setenv (3)
|
|
call used in the GNO implementation may fail. To detect this condition,
|
|
the user must set
|
|
.BR errno
|
|
to zero prior to calling
|
|
.BR umask ,
|
|
and check it's value afterward. Under most circumstances this possible
|
|
error condition may be ignored; the only side effect of
|
|
.BR setenv
|
|
failing in this case will be that the value of
|
|
.I numask
|
|
will not be maintained after an
|
|
.BR execve (2).
|
|
.SH SEE ALSO
|
|
.BR chmod (2),
|
|
.BR mknod (2),
|
|
.BR open (2)
|
|
.SH STANDARDS
|
|
The
|
|
.BR umask
|
|
function call is expected to conform to IEEE Std 1003.1-1988 (POSIX).
|