shmunlink(2) shmunlink(2)
NAME
shmunlink - deletes a shared memory object
C SYNOPSIS
#include <sys/mman.h>
int shmunlink(const char *path);
DESCRIPTION
path is a pointer to the character string, naming a shared memory object.
shmunlink deletes the named shared memory object from the file
namespace. The contents of the shared memory will persist after the call
to shmunlink, if one or more processes still reference the memory
object. Once the last reference has been dropped, the space occupied by
the shared memory object is freed and the object ceases to exist [see
close(2) and munmap(2)].
The named shared memory object is unlinked unless one or more of the
following are true:
EACCES Search permission is denied for a component of the
path prefix.
EACCES Write permission is denied on the directory
containing the shared memory object to be removed and
the process does not have the super-user privilege.
EACCES The parent directory has the sticky bit set and the
shared memory object is not writable by the user; the
user does not own the parent directory and the user
does not own the shared memory object.
EACCES Write permission is denied on the shared memory
object named by path.
EFAULT path points outside the process's allocated address
space.
EINTR A signal was caught during the shmunlink system
call.
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 component exceeds {NAMEMAX}
while POSIXNOTRUNC is in effect.
ENOENT The named shared memory object does not exist or is a
null pathname.
Page 1
shmunlink(2) shmunlink(2)
ENOTDIR A component of the path prefix is not a directory.
EPERM The named shared memory object is a directory.
EROFS The shared memory object to be unlinked is part of a
read-only file system.
SEE ALSO
shmopen(1), close(2), mmap(2), munmap(2)
DIAGNOSTICS
Upon successful completion, a value of 0 is returned. Otherwise, a value
of -1 is returned and errno is set to indicate the error.
Page 2