SEM_UNLINK(3C)          Standard C Library Functions          SEM_UNLINK(3C)
NAME
       sem_unlink - remove a named semaphore
SYNOPSIS
       #include <semaphore.h>       
int sem_unlink(
const char *name);
DESCRIPTION
       The 
sem_unlink() function removes the semaphore named by the string       
name. If the semaphore named by 
name is currently referenced by other
       processes, then 
sem_unlink() has no effect on the state of the
       semaphore.  If one or more processes have the semaphore open when       
sem_unlink() is called, destruction of the semaphore is postponed
       until all references to the semaphore have been destroyed by calls to       
sem_close(3C), 
_Exit(2), or one of the 
exec functions (see 
exec(2)) .
       Calls to 
sem_open(3C) to re-create or re-connect to the semaphore
       refer to a new semaphore after  
sem_unlink() is called.  The       
sem_unlink() call does not block until all references have been
       destroyed; it returns immediately.
RETURN VALUES
       Upon successful completion, 
sem_unlink() returns 
0. Otherwise, the
       semaphore is not changed and the function returns a value of 
-1 and
       sets 
errno to indicate the error.
ERRORS
       The  
sem_unlink() function will fail if:       
EACCES                        Permission is denied to unlink the named semaphore.       
ENAMETOOLONG                        The length of 
name string exceeds 
PATH_MAX, or a
                        pathname component is longer than 
NAME_MAX while                        
_POSIX_NO_TRUNC is in effect.       
ENOENT                        The named semaphore does not exist.       
ENOSYS                        The 
sem_unlink() function is not supported by the
                        system.
ATTRIBUTES
       See 
attributes(7) for descriptions of the following attributes:
       +--------------------+-------------------+
       |  ATTRIBUTE TYPE    |  ATTRIBUTE VALUE  |
       +--------------------+-------------------+
       |Interface Stability | Committed         |
       +--------------------+-------------------+
       |MT-Level            | MT-Safe           |
       +--------------------+-------------------+
       |Standard            | See 
standards(7). |
       +--------------------+-------------------+
SEE ALSO
       exec(2), 
exit(2), 
sem_close(3C), 
sem_open(3C), 
attributes(7),       
standards(7)NOTES
       Solaris 2.6 was the first release to support the Asynchronous Input
       and Output option. Prior to this release, this function always
       returned 
-1 and set 
errno to 
ENOSYS.
                              February 5, 2008                SEM_UNLINK(3C)