-.\" $OpenBSD: sem_init.3,v 1.6 2013/11/20 03:26:56 tedu Exp $
+.\" $OpenBSD: sem_init.3,v 1.7 2021/04/06 19:59:32 kn Exp $
.\"
.\" Copyright (C) 2000 Jason Evans <jasone@FreeBSD.org>.
.\" All rights reserved.
.\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.\" $FreeBSD: src/lib/libc_r/man/sem_init.3,v 1.11 2001/10/01 16:09:09 ru Exp $
-.Dd $Mdocdate: November 20 2013 $
+.Dd $Mdocdate: April 6 2021 $
.Dt SEM_INIT 3
.Os
.Sh NAME
.Fa value .
A non-zero value for
.Fa pshared
-specifies a shared semaphore that can be used by multiple processes.
+specifies a shared semaphore that can be used by multiple processes, which this
+implementation is not capable of.
.Pp
Following a successful call to
.Fn sem_init ,
exceeds SEM_VALUE_MAX.
.It Bq Er ENOSPC
Memory allocation error.
+.It Bq Er EPERM
+Unable to initialize a shared semaphore.
.El
.Sh SEE ALSO
.Xr sem_destroy 3 ,
.Fn sem_init
conforms to
.St -p1003.1-96 .
+.Pp
+This implementation does not support shared semaphores, and reports this fact
+by setting
+.Va errno
+to
+.Er EPERM .
+This is perhaps a stretch of the intention of POSIX, but is
+compliant, with the caveat that
+.Fn sem_init
+always reports a permissions error when an attempt to create a shared semaphore
+is made.