Table of Contentsrmdir - delete a directory #include <unistd.h> int rmdir(const char *pathname);
rmdir deletes a directory, which must be empty. On success, zero is returned. On error, -1 is returned, and errno is set appropriately. - EPERM
- The filesystem containing pathname does not support the removal of directories.
- EFAULT
- pathname points outside your accessible address space.
- EACCES
- Write access to the directory containing pathname was not allowed for the process's effective uid, or one of the directories in pathname did not allow search (execute) permission.
- EPERM
- The directory containing pathname has the sticky-bit (S_ISVTX) set and the process's effective uid is neither the uid of the file to be deleted nor that of the directory containing it.
- ENAMETOOLONG
- pathname was too long.
- ENOENT
- A directory component in pathname does not exist or is a dangling symbolic link.
- ENOTDIR
- pathname, or a component used as a directory in pathname, is not, in fact, a directory.
- ENOTEMPTY
- pathname contains entries other than . and .. .
- EBUSY
- pathname is the current working directory or root directory of some process.
- ENOMEM
- Insufficient kernel memory was available.
- EROFS
- pathname refers to a file on a read-only filesystem.
- ELOOP
- pathname contains a reference to a circular symbolic link, ie a symbolic link containing a reference to itself.
SVID, AT&T, POSIX, BSD 4.3 Infelicities in the protocol underlying NFS can cause the unexpected disappearance of directories which are still being used. rename(2), mkdir(2), chdir(2), unlink(2), rmdir(1), rm(1)
Table of Contents
www.fiveanddime.net