Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ chmod(2) — sysv — mips UMIPS RISC/os 4.52

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chown(2)

creat(2)

fcntl(2)

mknod(2)

open(2)

read(2)

write(2)

chmod(1)



CHMOD(2-SysV)       RISC/os Reference Manual        CHMOD(2-SysV)



NAME
     chmod, fchmod - change mode of file

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

     int fchmod (fd, mode)
     int fd, mode;

DESCRIPTION
     chmod sets the access permission portion of the mode of the
     named path or file described by the descriptor fd according
     to the bit pattern contained in mode.

     Access permission bits are interpreted as follows:

    04000   Set user ID on execution.
    020#0   Set group ID on execution if # is 7, 5, 3, or 1
            Enable mandatory file/record locking if # is 6, 4, 2, or 0
    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 execu-
     tion) is cleared.

     If a 410 executable file has the sticky bit (mode bit 01000)
     set, the operating system will not delete the program text
     from the swap area when the last user process terminates.
     If a 413 executable file has the sticky bit set, the operat-
     ing system will not delete the program text from memory when
     the last user process terminates.  In either case, if the
     sticky bit is set the text will already be available (either
     in a swap area or in memory) when the next user of the file
     executes it, thus making execution faster.

     If the mode bit 02000 (set group ID on execution) is set and
     the mode bit 00010 (execute or search by group) is not set,
     mandatory file/record locking will exist on a regular file.



                         Printed 1/15/91                   Page 1





CHMOD(2-SysV)       RISC/os Reference Manual        CHMOD(2-SysV)



     This may effect future calls to open(2), creat(2), read(2),
     and write(2) on this file.

ERRORS
     chmod 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 com-
                         ponent 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.

     [EINTR]             A signal was caught during the chmod
                         system call.

     [ENOLINK]           path points to a remote machine and the
                         link to that machine is no longer
                         active.

     [EMULTIHOP]         Components of path require hopping to
                         multiple remote machines.

SEE ALSO
     chown(2), creat(2), fcntl(2), mknod(2), open(2), read(2),
     write(2).
     chmod(1) in the User's Reference Manual.

DIAGNOSTICS
     Upon successful completion, a value of 0 is returned.  Oth-
     erwise, a value of -1 is returned and errno is set to indi-
     cate the error.











 Page 2                  Printed 1/15/91



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