1.\" $Darwin$ 2.\" 3.\" Copyright (c) 1999-2002 Apple Computer, Inc. All rights reserved. 4.\" 5.\" @APPLE_LICENSE_HEADER_START@ 6.\" 7.\" The contents of this file constitute Original Code as defined in and 8.\" are subject to the Apple Public Source License Version 1.1 (the 9.\" "License"). You may not use this file except in compliance with the 10.\" License. Please obtain a copy of the License at 11.\" http://www.apple.com/publicsource and read it before using this file. 12.\" 13.\" This Original Code and all software distributed under the License are 14.\" distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER 15.\" EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 16.\" INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 17.\" FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the 18.\" License for the specific language governing rights and limitations 19.\" under the License. 20.\" 21.\" @APPLE_LICENSE_HEADER_END@ 22.\" 23.Dd August 31, 2006 24.Dt SHM_UNLINK 2 25.Os Darwin 26.Sh NAME 27.Nm shm_unlink 28.Nd remove shared memory object 29.Sh SYNOPSIS 30.Fd #include <sys/mman.h> 31.Ft int 32.Fn shm_unlink "const char *name" 33.Sh DESCRIPTION 34The 35.Fn shm_unlink 36function disassociates the shared memory object specified by 37.Fa name 38from that name. 39The resources associated with the shared memory object remain intact 40until the last file descriptor reference is removed, e.g., by 41.Xr close 2 42or 43.Xr munmap 2 , 44at which point the resources are reclaimed 45(if no references exist at the time of the call to 46.Fn shm_unlink , 47the resources are reclaimed immediately). 48The name can only be reused 49when it is bound to a new shared memory object with a call to 50.Xr shm_open 2 51with the 52.Dv O_CREAT 53flag. 54.Sh RETURN VALUES 55Upon successful completion, a value of 0 is returned. 56Otherwise, a value of -1 is returned and 57.Va errno 58is set to indicate the error, 59and the named shared memory object will remain unchanged. 60.Sh ERRORS 61The 62.Fn shm_unlink 63succeeds unless: 64.Bl -tag -width Er 65.It Bq Er EACCES 66Permission is denied to be remove the object. 67.It Bq Er ENAMETOOLONG 68.Fa name 69exceeded the name size limit. 70This is currently 71.Dv PSHMNAMLEN 72characters (defined in 73.In sys/posix_shm.h ) , 74but this may change in the future. 75.It Bq Er ENOENT 76The named object does not exist. 77.El 78.Sh SEE ALSO 79.Xr close 2 , 80.Xr mmap 2 , 81.Xr munmap 2 , 82.Xr shm_open 2 , 83.Xr shmat 2 , 84.Xr shmctl 2 85.Sh HISTORY 86.Fn shm_open 87is specified in the POSIX Realtime Extension (1003.1b-1993/1003.1i-1995). 88