Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chown(2)

mknod(2)



     chmod(2)                                                 chmod(2)



     NAME
          chmod - change mode of file

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

     DESCRIPTION
          path points to a path name naming a file.  chmod sets the
          access permission portion of the named file's mode according
          to the bit pattern contained in mode.

          Access permission bits are interpreted as follows:


               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 if a directory) by owner.

               00070     Read, write, execute  (search) by group.

               00007     Read, write, execute  (search) by others.

          The effective user ID of the process must match the owner of
          the file or be super-user to change the mode of a file.

          If the effective user ID of the process is not super-user,
          mode bit 01000 (save text image on execution) is cleared.

          If the effective user ID of the process is not super-user
          and the effective group ID of the process does not match the
          group ID of the file, mode bit 02000 (set group ID on
          execution) is cleared.

          If an executable file is prepared for sharing (see the cc -n
          option), then mode bit 01000 prevents the system from
          abandoning the swap-space image of the program-text portion
          of the file when its last user terminates.  Thus, when the
          next user of the file executes it, the text need not be read
          from the file system but can simply be swapped in, saving
          time.

          Changing the owner of a file turns off the set-user-id bit,



     Page 1                                        (last mod. 1/14/87)





     chmod(2)                                                 chmod(2)



          unless the super-user does it.  This makes the system
          somewhat more secure at the expense of a degree of
          compatibility.  It will fail and the file mode will be
          unchanged if one or more of the following are true:

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

          [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 super-user.

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

          [EFAULT]       path points outside the allocated address
                         space of the process.

     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
          chown(2), mknod(2).

























     Page 2                                        (last mod. 1/14/87)



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