Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chroot(2)






       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 pathname 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.

          Return Values
             On success, chdir returns 0.  On failure, chdir returns -1,
             sets errno to identify the error, and the current directory
             remains unchanged.

          Errors
             In the following conditions, chdir fails and sets errno to:

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

            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 {PATH_MAX}, or
                    the length of a path component exceeds {NAME_MAX} while
                    _POSIX_NO_TRUNC is in effect.



                           Copyright 1994 Novell, Inc.               Page 1













      chdir(2)                                                    chdir(2)


           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.

           ENOLINK
                   path points to a remote machine and the 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.

            In the following conditions, fchdir fails and sets errno to:

           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.

           ENOENT The directory pointed to by fildes does not exist.

      REFERENCES
            chroot(2)

      NOTICES
         Considerations for Threads Programming
            Both current working directory and current root directory are
            process attributes and are shared by all related threads.  A
            change by one thread will be shared by all siblings.




                          Copyright 1994 Novell, Inc.               Page 2








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