Unix/Linux Go Back    


Linux 2.6 - man page for fchmodat (linux section 2)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)


FCHMODAT(2)			    Linux Programmer's Manual			      FCHMODAT(2)

NAME
       fchmodat - change permissions of a file relative to a directory file descriptor

SYNOPSIS
       #include <fcntl.h>	    /* Definition of AT_* constants */
       #include <sys/stat.h>

       int fchmodat(int dirfd, const char *pathname, mode_t mode, int flags);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       fchmodat():
	   Since glibc 2.10:
	       _XOPEN_SOURCE >= 700 || _POSIX_C_SOURCE >= 200809L
	   Before glibc 2.10:
	       _ATFILE_SOURCE

DESCRIPTION
       The  fchmodat()	system	call operates in exactly the same way as chmod(2), except for the
       differences described in this manual page.

       If the pathname given in pathname is relative, then it  is  interpreted	relative  to  the
       directory  referred  to	by the file descriptor dirfd (rather than relative to the current
       working directory of the calling process, as is done by chmod(2) for a relative pathname).

       If pathname is relative and dirfd is the special value AT_FDCWD, then pathname  is  inter-
       preted relative to the current working directory of the calling process (like chmod(2)).

       If pathname is absolute, then dirfd is ignored.

       flags can either be 0, or include the following flag:

       AT_SYMLINK_NOFOLLOW
	      If  pathname is a symbolic link, do not dereference it: instead operate on the link
	      itself.  This flag is not currently implemented.

RETURN VALUE
       On success, fchmodat() returns 0.  On error, -1 is returned and errno is set  to  indicate
       the error.

ERRORS
       The  same  errors  that	occur  for chmod(2) can also occur for fchmodat().  The following
       additional errors can occur for fchmodat():

       EBADF  dirfd is not a valid file descriptor.

       EINVAL Invalid flag specified in flags.

       ENOTDIR
	      pathname is relative and dirfd is a file descriptor referring to a file other  than
	      a directory.

       ENOTSUP
	      flags specified AT_SYMLINK_NOFOLLOW, which is not supported.

VERSIONS
       fchmodat() was added to Linux in kernel 2.6.16; library support was added to glibc in ver-
       sion 2.4.

CONFORMING TO
       POSIX.1-2008.

NOTES
       See openat(2) for an explanation of the need for fchmodat().

       The GNU C library wrapper function implements the POSIX-specified interface  described  in
       this  page.   This interface differs from the underlying Linux system call, which does not
       have a flags argument.

SEE ALSO
       chmod(2), openat(2), path_resolution(7), symlink(7)

COLOPHON
       This page is part of release 3.55 of the Linux man-pages project.  A  description  of  the
       project,     and    information	  about    reporting	bugs,	 can	be    found    at
       http://www.kernel.org/doc/man-pages/.

Linux					    2012-05-22				      FCHMODAT(2)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums


All times are GMT -4. The time now is 02:47 PM.