CHDIR(2) System Calls CHDIR(2)


NAME


chdir, fchdir - change working directory

SYNOPSIS


#include <unistd.h>

int chdir(const char *path);


int fchdir(int fildes);


DESCRIPTION


The chdir() and fchdir() functions cause a directory pointed to by path
or fildes to become the current working directory. The starting point
for path searches for path names not beginning with / (slash). The path
argument points to the path name of a directory. The fildes argument is
an open file descriptor of a directory.


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

RETURN VALUES


Upon successful completion, 0 is returned. Otherwise, -1 is returned, the
current working directory is unchanged, and errno is set to indicate the
error.

ERRORS


The chdir() function will fail if:

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


EFAULT
The path argument points to an illegal address.


EINTR
A signal was caught during the execution of the chdir()
function.


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


ELOOP
Too many symbolic links were encountered in translating
path.


ENAMETOOLONG
The length of the path argument exceeds PATH_MAX, or the
length of a path component exceeds NAME_MAX while
_POSIX_NO_TRUNC is in effect.


ENOENT
Either a component of the path prefix or the directory
named by path does not exist or is a null pathname.


ENOLINK
The path argument points to a remote machine and the link
to that machine is no longer active.


ENOTDIR
A component of the path name is not a directory.


The fchdir() function will fail if:

EACCES
Search permission is denied for fildes.


EBADF
The fildes argument is not an open file descriptor.


EINTR
A signal was caught during the execution of the fchdir()
function.


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


ENOLINK
The fildes argument points to a remote machine and the link to
that machine is no longer active.


ENOTDIR
The open file descriptor fildes does not refer to a directory.


ATTRIBUTES


See attributes(5) for descriptions of the following attributes:


+--------------------+-------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-------------------+
|Interface Stability | Standard |
+--------------------+-------------------+
|MT-Level | Async-Signal-Safe |
+--------------------+-------------------+

SEE ALSO


chroot(2), attributes(5), standards(5)


December 28, 1996 CHDIR(2)