CHOWN(2-BSD) RISC/os Reference Manual CHOWN(2-BSD)
NAME
chown, fchown - change owner and group of a file
SYNOPSIS
chown(path, owner, group)
char *path;
int owner, group;
fchown(fd, owner, group)
int fd, owner, group;
DESCRIPTION
The file that is named by path or referenced by fd has its
owner and group changed as specified.
If the _posix_chown_restricted kernel parameter is set to
zero, chown and fchown may not change the owner of a file
unless executed by the super_user, and may not change the
group of a file to a group of which the current user is not
a member. See kopt(8). Thus, only the super-user may
change the owner of the file, because if users were able to
give files away, they could defeat the file-space accounting
procedures.
If chown is invoked by other than the super-user, the set-
user-ID bit of the file mode will be cleared.
If chown is invoked by other than the super-user, and manda-
tory locking is not enabled (see lockf(3C-SVR3)), the set-
group-ID bit of the file mode will be cleared.
fchown is particularly useful when used in conjunction with
the file locking primitives (see flock(2)).
One of the owner or group id's may be left unchanged by
specifying it as -1.
If the final component of path is a symbolic link, the own-
ership and group of the symbolic link is changed, not the
ownership and group of the file or directory to which it
points.
RETURN VALUE
Zero is returned if the operation was successful; -1 is
returned if an error occurs, with a more specific error code
being placed in the global variable errno.
ERRORS
chown will fail and the file will be unchanged if:
[ENOTDIR] A component of the path prefix is not a
directory.
Printed 11/19/92 Page 1
CHOWN(2-BSD) RISC/os Reference Manual CHOWN(2-BSD)
[EINVAL] The pathname contains a character with the
high-order bit set.
[ENAMETOOLONG] A component of a pathname exceeded 255 char-
acters, or an entire path name exceeded 1023
characters.
[ENOENT] The named file does not exist.
[EACCES] Search permission is denied for a component
of the path prefix.
[ELOOP] Too many symbolic links were encountered in
translating the pathname.
[EPERM] The effective user ID is not the super-user.
[EROFS] The named file resides on a read-only file
system.
[EFAULT] path points outside the process's allocated
address space.
[EIO] An I/O error occurred while reading from or
writing to the file system.
fchown will fail if:
[EBADF] fd does not refer to a valid
descriptor.
[EINVAL] fd refers to a socket, not a file.
[EPERM] The effective user ID is not the
super-user.
[EROFS] The named file resides on a read-
only file system.
[EIO] An I/O error occurred while reading
from or writing to the file system.
SEE ALSO
chmod(2), flock(2).
chgrp(1) in the User's Reference Manual.
chown(8), kopt(8) in the System Administrator's Reference
Manual.
Page 2 Printed 11/19/92