CHDIR(2)

NAME
chdir - change current working directory

SYNOPSIS
chdir(path)
char *path;

DESCRIPTION
Path is the pathname 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. Otherwise, a value of -1 is returned and errno is set to indicate 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.

[EINVAL]
    The pathname contains a character with the high-order bit set.

[ENAMETOOLONG]
    A component of a pathname exceeded 255 characters, or an entire path name exceeded 1023 characters.

[ENOENT]
    The named directory does not exist.

[ELOOP]
    Too many symbolic links were encountered in translating the pathname.

[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)