pxfumask
- Date:
10-20-2011
NAME
PXFUMASK - Sets the file creation mask
SYNOPSIS
INTEGER icmask, iprevcmask, ierror
CALL PXFUMASK(icmask, iprevcmask, ierror)
IMPLEMENTATION
Cray Linux Environment (CLE)
STANDARDS
IEEE Std 1003.9-1992 standard interface for FORTRAN 77
DESCRIPTION
The PXFUMASK routine uses the umask(2) system call to change the file mode creation mask of the calling process. Only the file permission bits of icmask are used.
All arguments must be of default kind unless documented otherwise. Default kind is KIND=4 for integer, real, complex, and logical arguments.
The following is a list of arguments for this routine:
- icmask
An input integer variable for the new file mode creation mask. The symbolic constants used to compose the file mask can be access by calling PXFCONST(3F).
- iprevcmask
An output integer variable for the old file mode creation mask.
- ierror
An output integer variable that will contain a status of zero if the routine was successful.
EXAMPLES
In this example, the program calls PXFUMASK with a file mode creation mask of octal 022. Then a file is created using the new file creation mask.
program pxftest
integer icmask, iprevcmask, imode, ifildes, ifilemode, ierror
integer itemp
integer jstat
character*3 cmask
cmask = '022'
read(cmask,1) icmask
1 format(O3)
CALL PXFUMASK(icmask, iprevcmask, ierror)
CALL PXFCONST('S_IRWXU',imode,ierror)
if (ierror .ne. 0) then
print *,'FAILED: PXFCONST call for S_IRWXU with error=',ierror
else
CALL PXFCONST('S_IRWXG',itemp,ierror)
if (ierror .ne. 0) then
print *,'FAILED: PXFCONST call for S_IRWXG with error=',ierror
else
imode = IOR(imode,itemp)
CALL PXFCREAT('/tmp/tempfile', 0, imode, ifildes, ierror)
if (ierror .ne. 0) then
print *,'FAILED: PXFCREAT call with error = ',ierror
else
endif
endif
end
SEE ALSO
umask(2)
PXFCONST(3F)