NAME
chdir, fchdir - Changes the current directory
SYNOPSIS
int chdir (
const char *path );
int fchdir (
int filedes );
PARAMETERS
path Points to the pathname of the directory.
filedes Specifies the file descriptor of the directory.
DESCRIPTION
The chdir() function changes the current directory to the
directory indicated by the path parameter.
The fchdir() function changes the current directory to the
directory indicated by the filedes parameter. If the path
parameter refers to a symbolic link, the chdir() function
sets the current directory to the directory pointed to by
the symbolic link.
The current directory, also called the current working
directory, is the starting point of searches for pathnames
that do not begin with a / (slash). In order for a direc-
tory to become the current directory, the calling process
must have search access to the directory.
NOTES
The current working directory is shared between all threads
within the same process. Therefore, one thread using the
chdir() or fchdir() functions will affect every other thread
in that process.
AES Support Level:
Full use chdir() only
RETURN VALUES
Upon successful completion, the chdir() function returns a
value of 0 (zero). Otherwise, a value of -1 is returned and
errno is set to indicate the error.
ERRORS
If the chdir() function fails, the current directory remains
unchanged and errno may be set to one of the following
values:
[EACCES] Search access is denied for any component of the
pathname.
[ELOOP] Too many symbolic links were encountered in
translating the pathname.
[EFAULT] The path parameter points outside the process's
allocated address space.
[EIO] An I/O error occurred while reading from or writ-
ing to the file system.
[ENOENT] The named directory does not exist, or is an empty
string.
[ENOTDIR] A component of the path prefix is not a directory.
[ENAMETOOLONG]
The length of the path argument exceeds PATH_MAX
or a pathname component is longer than NAME_MAX
while [_POSIX_NO_TRUNC} is in effect.
If the fchdir() function fails, the current directory
remains unchanged and errno may be set to one of the follow-
ing values:
[EACCESS] The search permission is denied for the directory
referenced by the file descriptor.
[ENOTDIR] The file descriptor does not reference a direc-
tory.
[EBADF] The filedes parameter is not a valid open file
descriptor.
RELATED INFORMATION
Functions: chroot(2)
Commands: cd(1)
Acknowledgement and Disclaimer