chdir, fchdir - change working directory


SYNOPSIS

       #include <unistd.h>

       int chdir(const char *path);
       int fchdir(int fd);


DESCRIPTION

       chdir  changes  the current directory to that specified in
       path.

       fchdir is identical to chdir, only that the  directory  is
       given as an open file descriptor.


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 chdir are listed
       below:

       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 path is not a directory.

       EACCES Search permission is denied on a component of path.

       ELOOP  Too many symbolic links were encountered in resolv­
              ing path.

       EIO    An I/O error occurred.

       The general errors for fchdir are listed below:

       EBADF  fd is not a valid file descriptor.

       EACCES Search  permission was denied on the directory open
              on fd.


NOTES

       The prototype for fchdir is only available if  _BSD_SOURCE
       is  defined  (either  explicitly,  or  implicitly,  by not



CONFORMING TO

       The  chdir  call  is  compatible  with  SVr4, SVID, POSIX,
       X/OPEN, 4.4BSD.  SVr4 documents additional EINTR, ENOLINK,
       and EMULTIHOP error conditions but has no ENOMEM.  POSIX.1
       does not have ENOMEM or ELOOP  error  conditions.   X/OPEN
       does not have EFAULT, ENOMEM or EIO error conditions.

       The  fchdir  call  is  compatible  with  SVr4,  4.4BSD and
       X/OPEN.  SVr4 documents additional EIO, EINTR, and ENOLINK
       error  conditions.   X/OPEN documents additional EINTR and
       EIO error conditions.


SEE ALSO

       getcwd(3), chroot(2)


Man(1) output converted with man2html