Man Linux: Main Page and Category List

NAME

       rfio_chmod, rfio_fchmod - change access mode of a directory/file

SYNOPSIS

       #include <sys/types.h>
       #include "rfio_api.h"

       int rfio_chmod (const char *path, mode_t mode);
       int rfio_fchmod (int s, mode_t mode);

DESCRIPTION

       rfio_chmod  sets  the  access  permission  portion  of  the  mode  of a
       directory/file to the bit pattern in mode.

       rfio_fchmod is identical to rfio_chmod but works on the file descriptor
       s returned by rfio_open.

       path   specifies the logical pathname relative to the current directory
              or the full pathname.

       mode   is constructed by OR’ing the bits defined in <sys/stat.h>  under
              Unix or  "statbits.h" under Windows/NT:

              S_IRUSR   0000400         read by owner
              S_IWUSR   0000200         write by owner
              S_IXUSR   0000100         execute/search by owner
              S_IRGRP   0000040         read by group
              S_IWGRP   0000020         write by group
              S_IXGRP   0000010         execute/search by group
              S_IROTH   0000004         read by others
              S_IWOTH   0000002         write by others
              S_IXOTH   0000001         execute/search by others

       The  effective  user ID of the process must match the owner of the file
       or be super-user.  If a directory is writable and has  the  sticky  bit
       set,  files/directories within that directory can be removed or renamed
       only if:

              the effective user ID of the requestor matches the owner  ID  of
              the file or

              the  effective  user ID of the requestor matches the owner ID of
              the directory or

              the file is writable by the requestor or

              the requestor is super-user.

RETURN VALUE

       This routine returns 0 if the operation was successful  or  -1  if  the
       operation failed. In the latter case, serrno is set appropriately.

ERRORS

       EPERM        The effective user ID does not match the owner of the file
                    and is not super-user.

       ENOENT       The named file/directory does  not  exist  or  is  a  null
                    pathname.

       EBADF        s is not a valid file descriptor.

       EACCES       Search  permission  is  denied  on a component of the path
                    prefix or write permission on the file itself is denied.

       EFAULT       path is a NULL pointer.

       ENOTDIR      A component of path prefix is not a directory.

       ENAMETOOLONG The length of path exceeds CA_MAXPATHLEN or the length  of
                    a path component exceeds CA_MAXNAMELEN.

       SENOSHOST    Host unknown.

       SENOSSERV    Service unknown.

       SECOMERR     Communication error.

SEE ALSO

       Castor_limits(4)

AUTHOR

       LCG Grid Deployment Team