Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ rmdir(2) — OSF/1 1.0 (TIN) MIPS

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

chmod(2)

mkdir(2)

mknod(2)

mkfifo(3)

remove(3)

rename(2)

umask(2)

unlink(2)

rmdir(2)  —  System Calls

OSF

NAME

rmdir − Removes a directory file

SYNOPSIS

int rmdir (
const char ∗path );

PARAMETERS

pathSpecifies the directory pathname.  The final component of the path parameter cannot be a symbolic link. 

DESCRIPTION

The rmdir() function removes the directory specified by the path parameter.  The directory is removed only if it is an empty directory. 

For the rmdir() function to execute successfully, the calling process must have write access to the parent directory of the path parameter. 

If the directory’s link count becomes 0 (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 . (dot) and .. (dot-dot) entries, if present, are removed before the rmdir() function returns, and no new entries may be created in the directory.  However, the directory is not removed until all references to the directory have been closed. 

Upon successful completion, the rmdir() function marks the st_ctime and st_mtime fields of the parent directory for update. 

NOTES

AES Support Level:
Full use

RETURN VALUES

Upon successful completion, the rmdir() function returns a value of 0 (zero). If the rmdir() function fails, a value of -1 is returned and errno is set to indicate the error. 

ERRORS

If the rmdir() function fails, the directory is not deleted and errno may be set to one of the following values:

[EBUSY]The directory is in use as either the mount point for a file system or the current directory of the process that issued the rmdir() function. 

[EEXIST]The directory named by the path parameter is not empty. 

[ENOENT]The directory named by the path parameter does not exist or is an empty string. 

[EROFS]The directory named by the path parameter resides on a read-only file system. 

[EACCES]Search permission is denied on a component of the path parameter, or write permission is denied on the parent directory of the directory to be removed. 

[EFAULT]The path parameter is an invalid address. 

[ELOOP]Too many links were encountered in translating path. 

[ENAMETOOLONG]
The length of the path parameter exceeds PATH_MAX, or a pathname component is longer than NAME_MAX. 

[EPERM]The S_ISVTX flag is set on the parent directory of the directory to be removed, and the caller is not the file owner. 

[ENOTDIR]A component of the path parameter is not a directory. 

RELATED INFORMATION

Functions: chmod(2), mkdir(2), mknod(2), mkfifo(3), remove(3), rename(2), umask(2), unlink(2)

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