chmod

Hurricane Electric Internet Services: Accounts starting at $9.95/month
Hurricane Electric Internet Services

NAME

       chmod, fchmod - change permissions of a file


SYNOPSIS

       #include <sys/types.h>
       #include <sys/stat.h>

       int chmod(const char *path, mode_t mode);
       int fchmod(int fildes, mode_t mode);


DESCRIPTION

       The  mode  of  the  file  given  by  path or referenced by
       filedes is changed.

       Modes are specified by or'ing the following:


              S_ISUID   04000 set user ID on execution

              S_ISGID   02000 set group ID on execution

              S_ISVTX   01000 sticky bit

              S_IRUSR (S_IREAD)
                        00400 read by owner

              S_IWUSR (S_IWRITE)
                        00200 write by owner

              S_IXUSR (S_IEXEC)
                        00100 execute/search by owner

              S_IRGRP   00040 read by group

              S_IWGRP   00020 write by group

              S_IXGRP   00010 execute/search by group

              S_IROTH   00004 read by others

              S_IWOTH   00002 write by others

              S_IXOTH   00001 execute/search by others


       The effective UID of the process  must  be  zero  or  must
       match the owner of the file.

       The  effective  UID or GID must be appropriate for setting
       execution bits.

       Depending on the file system, set user ID and set group ID
       execution bits may be turned off if a file is written.  On
       some file systems, only the super-user can set the  sticky
       bit,  which may have a special meaning (i.e., for directo-
       ries, a file can only be  deleted  by  the  owner  or  the
       super-user).



RETURN VALUE

       On  success,  zero is returned.  On error, -1 is returned,
       and errno is set appropriately.


ERRORS

       Depending  on  the  file  system,  other  errors  can   be
       returned.   The  more  general errors for chmod are listed
       below:


       EPERM   The effective UID does not match the owner of  the
               file, and is not zero.

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

       EFAULT  path points outside your accessible address space.

       ENAMETOOLONG
               path is too long.

       ENOENT  The file does not exist.

       ENOMEM  Insufficient kernel memory was available.

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

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

       ELOOP   path  contains  a  circular reference (i.e., via a
               symbolic link)

       The general errors for fchmod are listed below:

       EBADF   The descriptor is not value.

       ENOENT  See above.

       EPERM   See above.

       EROFS   See above.


SEE ALSO

       open(2), chown(2), stat(2)
Hurricane Electric Internet Services: Accounts starting at $9.95/month
Hurricane Electric Internet Services
Copyright (C) 1998 Hurricane Electric. All Rights Reserved.