Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chgrp(1)

chown(2)

open(2)



CHMOD(2)                COMMAND REFERENCE                CHMOD(2)



NAME
     chmod, fchmod - change mode of file

SYNOPSIS
     chmod(path, mode)
     char *path;
     int mode;

     fchmod(fd, mode)
     int fd, mode;

DESCRIPTION
     The file whose name is given by path or referenced by the
     descriptor fd has its mode changed to mode.  Modes are
     constructed by or'ing together some combination of the
     following bit patterns:

          04000  set user ID on execution
          02000  set group ID on execution
          01000  save text image after execution
          00400  read by owner
          00200  write by owner
          00100  execute (search on directory) by owner
          00070  read, write, execute (search) by group
          00007  read, write, execute (search) by others

     If an executable file is set up for sharing (this is the
     default) then mode 1000 prevents the system from abandoning
     the swap-space image of the program-text portion of the file
     when its last user terminates.  Ability to set this bit is
     restricted to the superuser.

     Only the owner of a file (or the superuser) may change the
     mode.

     Writing or changing the group owner of a file (see chgrp(1))
     turns off the set-user-id and set-group-id bits; this makes
     the system somewhat more secure by protecting set-user-id
     (set-group-id) files from remaining set-user-id (set-group-
     id) if they are modified, at the expense of a degree of
     compatibility.

DIAGNOSTICS
     The chmod command fails and the file mode is unchanged if:

     [ENOASCII]     The argument path contains a byte with the
                    high-order bit set.

     [ENOTDIR]      A component of the path prefix is not a
                    directory.

     [ENAMETOOLONG] The argument path is too long.



Printed 4/6/89                                                  1





CHMOD(2)                COMMAND REFERENCE                CHMOD(2)



     [ENOENT]       The named file does not exist.

     [EACCES]       Search permission is denied on a component of
                    the path prefix.

     [EPERM]        The effective user ID does not match the
                    owner of the file and the effective user ID
                    is not the superuser.

     [EROFS]        The named file resides on a read-only file
                    system.

     [EFAULT]       The path argument points outside the
                    process's allocated address space.

     [ELOOP]        Too many symbolic links were encountered in
                    translating the path name.

     The fchmod command fails if:

     [EPERM]        The effective user ID does not match the
                    owner of the file and the effective user ID
                    is not the superuser.

     [EBADF]        The descriptor is not valid.

     [EINVAL]       The fd argument refers to a socket, not to a
                    file.

     [EIO]          An I/O error occurred while reading from or
                    writing to the file system.

     [EROFS]        The file resides on a read-only file system.

RETURN VALUE
     Upon successful completion, a value of 0 is returned.
     Otherwise, a value of -1 is returned and errno is set to
     indicate the error.

SEE ALSO
     chgrp(1), chown(2), and open(2).














Printed 4/6/89                                                  2



%%index%%
na:264,87;
sy:351,787;
de:1138,1447;
di:2585,500;3421,1237;
rv:4658,280;
se:4938,162;
%%index%%000000000119

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026