execline
Software
skarnet.org
The posix-umask program
posix-umask changes its file mode creation mask, then executes a program.
Interface
posix-umask [ -S ] [ mask ] [ prog... ]
When called with no argument, posix-umask prints the value of the
file mode creation mask of the invoking process, then exits 0.
When called with a mask argument, posix-umask changes
its file mode creation mask; then, if prog... is not empty, it execs
into it.
posix-umask interprets mask as specified by the
POSIX
specification for a umask external utility.
Notes
- When execline has been configured
with the --enable-pedantic-posix option, the umask
command is a symbolic link to it. So scripts calling umask
will use posix-umask. When this configuration option has not
been given, umask is a symbolic link to
execline-umask.
- posix-umask fully conforms to the
POSIX
specification. When prog... is not empty, the behaviour of a
umask utility is not specified by POSIX, so posix-umask extends
the spec to be actually useful and usable in an execline program with the same
interface as the regular execline umask command.
- Nobody ever executes or needs the external version (i.e. not a shell
builtin) of the POSIX umask command. Compared to execline's regular umask
binary, execline-umask, posix-umask is
uselessly bloated and slow. The only reason it exists is that some
distributions refuse to package execline correctly unless it is strictly
POSIX-compliant; the --enable-pedantic-posix configure option is
there to satisfy their requirements.