umask()
QNX SDP8.0C Library ReferenceAPIDeveloper
Set the file-mode creation mask for the process
Synopsis:
#include <sys/types.h>
#include <sys/stat.h>
mode_t umask( mode_t cmask );
Arguments:
- cmask
- The new file-mode creation mask; that is, the permissions that you don't want set when the process creates a file.
The mask is a combination of these bits:
Owner Group Others Permission S_IRUSR S_IRGRP S_IROTH Read S_IRWXU S_IRWXG S_IRWXO Read, write, execute/search; a bitwise inclusive OR of the other three constants. (S_IRWXU is OR of IRUSR, S_IWUSR and S_IXUSR.) S_IWUSR S_IWGRP S_IWOTH Write S_IXUSR S_IXGRP S_IXOTH Execute/search
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The umask() function sets the process's file-mode creation mask to cmask, and returns the previous value of the mask. Only the file permission bits (as defined in <sys/stat.h>) are used.
The file-mode creation mask for the process is used when you call creat(), mkdir(), mkfifo(), and open(), to turn off permission bits in the mode argument supplied. Bit positions set in cmask are cleared in the mode of the created file.
Returns:
The previous value of the file-mode creation mask.
Examples:
/*
* Set the umask to RW for owner,group; R for other
*/
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
int main( void )
{
mode_t omask;
mode_t nmask;
nmask = S_IRUSR | S_IWUSR | /* owner read write */
S_IRGRP | S_IWGRP | /* group read write */
S_IROTH; /* other read */
omask = umask( nmask );
printf( "Mask changed from %o to %o\n",
omask, nmask );
return EXIT_SUCCESS;
}
Classification:
Safety: | |
---|---|
Cancellation point | No |
Signal handler | Yes |
Thread | Yes |
Page updated: