revoke - Void all references to a file
int revoke(
char *path );
Points to a null-terminated string containing the appropriate
pathname.
The revoke() function invalidates all file descriptors
associated with the pathname specified in path, which must
be a block- or character-special file. Any open file system
object on the device on which the revoked file system
object resides subsequently holds an invalid file descriptor,
and will receive errors on attempts to access the
file with any read(), write(), ioctl(), or select() system
call. The only call that will succeed under these conditions
is close(). A subsequent call to open() will result
in a valid file descriptor and again enable access to the
file.
The behavior of the revoke() system call depends on the
setting of the revoke_tty_only attribute of the vfs kernel
subsystem. By default, the revoke_tty_only attribute is
set to 1. In this case, the revoke() system call can
invalidate file descriptors of only tty devices. On
attempts to invalidate file descriptors of any other
devices, the call returns the [ENOTTY] error.
If you set the revoke_tty_only attribute to 0, the system
call conforms to its behavior in early versions of the
Tru64 UNIX operating system; however, it is strongly recommended
that this attribute remain at its default setting
(1) in a cluster environment.
The effective user ID of the process must be the same as
the owner of the file, or the process must have superuser
privilege in order to use the call in this manner.
Upon successful completion, a value of 0 (zero) is
returned. If the revoke() function fails, it returns a
value of -1 and sets errno to indicate the error.
If the revoke function fails, errno may be set to one of
the following values: The file represented by the pathname
is of the incorrect type. The size of the pathname
exceeds PATH_MAX or a pathname component is longer than
NAME_MAX. A component of the specified pathname does not
exist, or the path parameter points to an empty string. A
component of the path prefix is not a directory. The system
attribute revoke_tty_only is set on and the device is
not a tty.
Commands: sysconfig(8)
Functions: ioctl(2), open(2), read(2), select(2), write(2)
Others: sys_attrs(5), sys_attrs_vfs(5)
revoke(2)
[ Back ] |