NAME

     chdir, fchdir - change current working directory


SYNOPSIS

     #include <unistd.h>

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


DESCRIPTION

     Path is the  pathname  of  a  directory.   Fd  is  the  file
     descriptor of a directory.

     Chdir causes this directory to become  the  current  working
     directory,  the  starting point for path names not beginning
     with ``/''.

     In order for a directory to become the current directory,  a
     process must have execute (search) access to the directory.


RETURN VALUE

     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.


ERRORS

     Chdir will fail and the current working  directory  will  be
     unchanged if one or more of the following are true:

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

     [ENAMETOOLONG] The path name exceeds PATH_MAX characters.

     [ENOENT]       The named directory does not exist.

     [ELOOP]        Too many symbolic links were  encountered  in
                    translating the pathname.  (Minix-vmd)

     [EACCES]       Search permission is denied for any component
                    of the path name.

     [EFAULT]       Path points outside the  process's  allocated
                    address space.

     [EIO]          An I/O error occurred while reading  from  or
                    writing to the file system.


SEE ALSO

     chroot(2).