Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ rmdir(2) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

directory(3C)

mkdir(1)

mkdir(2)

mkdirp(3G)

rm(1)






       rmdir(2)                                                    rmdir(2)


       NAME
             rmdir - remove a directory

       SYNOPSIS
             #include <unistd.h>
             int rmdir(const char *path);

       DESCRIPTION
             rmdir removes the directory named by the path name pointed to
             by path.  The directory must not have any entries other than
             ``.'' and ``..''.

             If the directory's link count becomes zero and no process has
             the directory open, the space occupied by the directory is
             freed and the directory is no longer accessible.  If one or
             more processes have the directory open when the last link is
             removed, the ``.'' and ``..'' entries, if present, are removed
             before rmdir returns and no new entries may be created in the
             directory, but the directory is not removed until all
             references to the directory have been closed.

             If path is a symbolic link, it is not followed.

          Files
             Message catalog:  uxcore.abi

          Return Values
             On success, rmdir returns 0 and marks for update the st_ctime
             and st_mtime fields of the parent directory.  On failure,
             rmdir returns -1  and sets errno to identify the error.

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

            EACCES Search permission is denied for a component of the path
                    prefix.

            EACCES Write permission is denied on the directory containing
                    the directory to be removed.

            EACCES The parent directory has the sticky bit set and is not
                    owned by the user; the directory is not owned by the
                    user and is not writable by the user; the calling
                    process does not have the P_COMPAT privilege.




                           Copyright 1994 Novell, Inc.               Page 1













      rmdir(2)                                                    rmdir(2)


           EBUSY  The directory to be removed is the mount point for a
                   mounted file system.

           EBUSY  The directory to be removed is the current directory.

           EBUSY  The directory to be removed is the ``.'' entry of a
                   directory.

           EEXIST The directory contains entries other than those for
                   ``.'' and ``..''.

           EFAULT path points outside the process's allocated address
                   space.

           EIO    An I/O error occurred while accessing the file system.

           ELOOP  Too many symbolic links were encountered in translating
                   path.

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

           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.

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

           ENOENT The named directory does not exist or is the null
                   pathname.

           EROFS  The directory entry to be removed is part of a read-only
                   file system.

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

      REFERENCES
            directory(3C), mkdir(1), mkdir(2), mkdirp(3G), rm(1)





                          Copyright 1994 Novell, Inc.               Page 2








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