Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ chdir(2) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chroot(2)

getcwd(3C)

unistd(4)

chdir(2)                                                           chdir(2)

NAME
     chdir, fchdir - change working directory

SYNOPSIS
     #include <unistd.h>

     int chdir(const char *path);

     int fchdir(int fildes);

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

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

ERRORS
     The following error code descriptions are function-specific. You will
     find a general description in introprm2(2) or in errno(5).

     chdir() will fail and the current working directory will be unchanged
     if one or more of the following apply:

     EACCES        Search permission is denied for any component of the
                   pathname.

     EFAULT        path points outside the allocated address space of the
                   process.

     EINTER        A signal was caught during the execution of the chdir()
                   system call.

     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 PATHMAX or the
                   length of a path component exceeds NAMEMAX.

     ENOTDIR       A component of the pathname is not a directory.

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

     EMULTIHOP     Components of path require hopping to multiple remote
                   machines.



Page 1                       Reliant UNIX 5.44                Printed 11/98

chdir(2)                                                           chdir(2)

     The chdir() function may fail if:

     ENAMETOOLONG  Pathname resolution of a symbolic link produced an
                   intermediate result whose length exceeds PATHMAX.

     fchdir() will fail and the current working directory will be unchanged
     if one or more of the following apply:

     EACCES        Search permission is denied for fildes.

     EBADF         fildes is not an open file descriptor.

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

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

     ENOLINK       fildes 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.

RESULT
     Upon successful completion, a value of zero is returned. Otherwise, a
     value of -1 is returned and errno is set to indicate the error.

SEE ALSO
     chroot(2), getcwd(3C), unistd(4).
























Page 2                       Reliant UNIX 5.44                Printed 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026