Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ chdir(2) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chroot(2)



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
     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 path names not beginning with /.
     path  points  to  the  path name of a directory.  The fildes
     argument to fchdir is an open file descriptor  of  a  direc-
     tory.

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

     chdir will fail and the current working  directory  will  be
     unchanged if one or more of the following are true:

     EACCES              Search permission is denied for any com-
                         ponent of the path name.

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

     EINTR               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 com-
                         ponent    exceeds    {NAMEMAX}    while
                         POSIXNOTRUNC is in effect.

     ENOTDIR             A component of the path name  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.

     ENOLINK             path points to a remote machine and  the



                                                                1





chdir(2)                  SYSTEM CALLS                   chdir(2)



                         link   to  that  machine  is  no  longer
                         active.

     EMULTIHOP           Components of path  require  hopping  to
                         multiple remote machines and file system
                         type does not allow it.

     fchdir will fail and the current working directory  will  be
     unchanged if one or more of the following are true:

     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.

SEE ALSO
     chroot(2).

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





















                                                                2



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