Open System Services System Calls Reference Manual (G06.28+, H06.05+)
chmod(2) OSS System Calls Reference Manual
optional (nondefault) ACL entries with nonzero permissions also have the comment |
# effective:---. |
To set the permission bits of ACL entries, use the acl() function instead of the chmod() function. |
ACLs are not supported for symbolic links.
Use on Guardian Objects
Attempting to set the access permissions on a Guardian file (that is, a file in the /G file system)
fails with errno set to [EINVAL].
Use From the Guardian Environment
The chmod() function is one of a set of functions that have these effects when the first of them is
called from the Guardian environment:
• Two Guardian file system file numbers (not necessarily the next two available) are allo-
cated for the root directory and the current working directory. These file numbers cannot
be closed by calling the Guardian FILE_CLOSE_ procedure.
• The current working directory is assigned from the VOLUME attribute of the Guardian
environment =_DEFAULTS DEFINE.
• The use of static memory by the process increases slightly.
These effects occur only when the first of the set of functions is called. The effects are not cumu-
lative.
RETURN VALUES
Upon successful completion, the chmod() function returns the value 0 (zero). Otherwise, the
value -1 is returned, and errno is set to indicate the error.
ERRORS
If any of these conditions occur, the chmod() function sets errno to the corresponding value:
[EACCES] Search permission is denied for a component of the path parameter.
[EFAULT] The path parameter points to a location outside of the allocated address space of
the process.
[EFSBAD] The fileset catalog for one of the filesets involved in the operation is corrupt.
[EINVAL] One of these conditions exists:
• The value of the mode parameter is invalid.
• An attempt was made to set access permissions on a Guardian file (that
is, a file in the /G file system).
[EIO] An input or output error occurred. The device holding the file might be in the
down state, or both processors that provide access to the device might have
failed.
[ELOOP] Too many symbolic links were encountered in translating the path parameter.
[ENAMETOOLONG]
One of these is too long:
• The pathname pointed to by the path parameter
• A component of the pathname pointed to by the path parameter
1−22 Hewlett-Packard Company 527186-007