CHDIR(2) BSD CHDIR(2)
NAME
chdir - change current working directory
SYNOPSIS
chdir(path)
const 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 a slash (/).
In order for a directory to become the current directory, a process must
have execute (search) access to the directory.
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] A component of a pathname exceeded 255 characters, or an
entire pathname exceeded 1023 characters.
[ENOENT] The named directory does not exist or path points to an
empty string.
[ELOOP] Too many symbolic links were encountered in translating
the pathname.
[EACCES] Search permission is denied for any component of the
pathname.
[EIO] An I/O error occurred while reading from or writing to
the file system.
DIAGNOSTICS
Upon successful completion, a value of 0 is returned. Otherwise, a value
of -1 is returned and errno is set to indicate the error.
NOTES
Some implementations return the error [EINVAL] if path contains a
character with the high-order bit set.