PXFCHMOD(3F) Last changed: 1-6-98
PXFCHMOD - Sets file modes for a named file
CHARACTER*n path
INTEGER ilen, imode, ierror
CALL PXFCHMOD(path, ilen, imode, ierror)
UNICOS, UNICOS/mk, and IRIX systems
IEEE standard interface for FORTRAN 77
On IRIX systems, this routine is in libfortran.so which is linked by
default when compiling programs with the MIPSpro 7 Fortran 90 compiler
or when compiling programs with the -craylibs option to the MIPSpro
7.2 F77 compiler.
The PXFCHMOD subroutine uses the chmod(2) function to set file modes
for the named file.
The value of imode indicates specific file modes. chmod() changes the
current file modes for the named file in path to the file mode
specified in imode.
When using the CF90 compiler or MIPSpro 7 Fortran 90 compiler on
UNICOS, UNICOS/mk, or IRIX system, all arguments must be of default
kind unless documented otherwise. On UNICOS and UNICOS/mk, default
kind is KIND=8 for integer, real, complex, and logical arguments; on
IRIX, the default kind is KIND=4.
The following is a list of valid arguments for this subroutine:
path Input character variable or array element containing the
name of a file.
ilen Input integer variable containing the length of path in
characters. If ilen is zero, all trailing blanks are
removed before calling chmod().
imode Input integer variable containing the integer value of the
symbolic constant for one or more of the following file
modes:
USER READ permissions bit: S_IRUSR
WRITE permissions bit: S_IWUSR
SEARCH/EXECUTE permissions bit: S_IXUSR
Inclusive OR of READ/WRITE/EXECUTE: S_IRWXU
GROUP READ permissions bit: S_IRGRP
WRITE permissions bit: S_IWGRP
SEARCH/EXECUTE permissions bit: S_IXGRP
Inclusive OR of READ/WRITE/EXECUTE: S_IRWXG
OTHER READ permissions bit: S_IROTH
WRITE permissions bit: S_IWOTH
SEARCH/EXECUTE permissions bit: S_IXOTH
Inclusive OR of READ/WRITE/EXECUTE: S_IRWXO
SETID Set user ID on execution: S_ISUID
Set group ID on execution: S_ISGID
An integer value for each of these symbolic
constants is retrieved through the use of
PXFCONS
. The integer values
may be combined through the use of a bitwise
inclusive OR function.
ierror Output integer variable that contains zero if the requested
file mode bits are set or nonzero if the requested file mode
bits are not set.
In addition to the errors returned by the chmod(2) system call,
PXFCHMOD may return the following errors:
EINVAL If ilen < 0 or ilen > LEN(path).
ENOMEM If PXFCHMOD is unable to obtain memory to copy path.
program test
character*(12) path
integer ilen, imod, ierr, imodr, imodw
path = 'testfile'
imod = 0
imodr = 0
imodw = 0
ilen = 0
call pxfconst('S_IRUSR',imodr,ierr)
if (ierr.ne.0) then
print *,'FAIL: error from pxfconst S_IRUSR = ',ierr
stop
endif
call pxfconst('S_IROTH',imodw,ierr)
if (ierr.ne.0) then
print *,'FAIL: error from pxfconst S_IWUSR = ',ierr
stop
endif
imod = IOR(imodr,imodw)
call pxfchmod(path,ilen,imod,ierr)
if (ierr.ne.0) then
print *,'FAIL: error from pxfchmod = ',ierr
else
print *,'PASS: No error from pxfchmod'
endif
end
chmod(2)
Application Programmer's Library Reference Manual, publication SR2165,
for the printed version of this man page.
PXFCHMOD(3F) Last changed: 1-6-98
PXFCHMOD - Sets file modes for a named file
CHARACTER*n path
INTEGER ilen, imode, ierror
CALL PXFCHMOD(path, ilen, imode, ierror)
UNICOS, UNICOS/mk, and IRIX systems
IEEE standard interface for FORTRAN 77
On IRIX systems, this routine is in libfortran.so which is linked by
default when compiling programs with the MIPSpro 7 Fortran 90 compiler
or when compiling programs with the -craylibs option to the MIPSpro
7.2 F77 compiler.
The PXFCHMOD subroutine uses the chmod(2) function to set file modes
for the named file.
The value of imode indicates specific file modes. chmod() changes the
current file modes for the named file in path to the file mode
specified in imode.
When using the CF90 compiler or MIPSpro 7 Fortran 90 compiler on
UNICOS, UNICOS/mk, or IRIX system, all arguments must be of default
kind unless documented otherwise. On UNICOS and UNICOS/mk, default
kind is KIND=8 for integer, real, complex, and logical arguments; on
IRIX, the default kind is KIND=4.
The following is a list of valid arguments for this subroutine:
path Input character variable or array element containing the
name of a file.
ilen Input integer variable containing the length of path in
characters. If ilen is zero, all trailing blanks are
removed before calling chmod().
imode Input integer variable containing the integer value of the
symbolic constant for one or more of the following file
modes:
USER READ permissions bit: S_IRUSR
WRITE permissions bit: S_IWUSR
SEARCH/EXECUTE permissions bit: S_IXUSR
Inclusive OR of READ/WRITE/EXECUTE: S_IRWXU
GROUP READ permissions bit: S_IRGRP
WRITE permissions bit: S_IWGRP
SEARCH/EXECUTE permissions bit: S_IXGRP
Inclusive OR of READ/WRITE/EXECUTE: S_IRWXG
OTHER READ permissions bit: S_IROTH
WRITE permissions bit: S_IWOTH
SEARCH/EXECUTE permissions bit: S_IXOTH
Inclusive OR of READ/WRITE/EXECUTE: S_IRWXO
SETID Set user ID on execution: S_ISUID
Set group ID on execution: S_ISGID
An integer value for each of these symbolic
constants is retrieved through the use of
PXFCONS
. The integer values
may be combined through the use of a bitwise
inclusive OR function.
ierror Output integer variable that contains zero if the requested
file mode bits are set or nonzero if the requested file mode
bits are not set.
In addition to the errors returned by the chmod(2) system call,
PXFCHMOD may return the following errors:
EINVAL If ilen < 0 or ilen > LEN(path).
ENOMEM If PXFCHMOD is unable to obtain memory to copy path.
program test
character*(12) path
integer ilen, imod, ierr, imodr, imodw
path = 'testfile'
imod = 0
imodr = 0
imodw = 0
ilen = 0
call pxfconst('S_IRUSR',imodr,ierr)
if (ierr.ne.0) then
print *,'FAIL: error from pxfconst S_IRUSR = ',ierr
stop
endif
call pxfconst('S_IROTH',imodw,ierr)
if (ierr.ne.0) then
print *,'FAIL: error from pxfconst S_IWUSR = ',ierr
stop
endif
imod = IOR(imodr,imodw)
call pxfchmod(path,ilen,imod,ierr)
if (ierr.ne.0) then
print *,'FAIL: error from pxfchmod = ',ierr
else
print *,'PASS: No error from pxfchmod'
endif
end
chmod(2)
Application Programmer's Library Reference Manual, publication SR2165,
for the printed version of this man page.
[ Back ]
|