In
b0b19983d9a2001ce94b908a99f4c05a50fd47ee we removed
<sys/types.h>. For the same reasons there, remove now <sys/ipc.h>
from many pages.
If someone wonders why <sys/ipc.h> was needed, the reason was to
get all the definitions of IPC_* constants. However, that header
is now included by <sys/msg.h>, so it's not needed anymore to
explicitly include it. Quoting POSIX: "In addition, the
<sys/msg.h> header shall include the <sys/ipc.h> header."
There were some remaining cases where I forgot to remove
<sys/types.h>; remove them now too.
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
msgctl \- System V message control operations
.SH SYNOPSIS
.nf
-.B #include <sys/ipc.h>
.B #include <sys/msg.h>
.PP
.BI "int msgctl(int " msqid ", int " cmd ", struct msqid_ds *" buf );
POSIX.1-2001, POSIX.1-2008, SVr4.
.\" SVID does not document the EIDRM error condition.
.SH NOTES
-The inclusion of
-.I <sys/ipc.h>
-isn't required on Linux or by any version of POSIX.
-However,
-some old implementations required the inclusion of this header file,
-and the SVID also documented its inclusion.
-Applications intended to be portable to such old systems may need
-to include this header file.
-.\" Like Linux, the FreeBSD man pages still document
-.\" the inclusion of this header file.
-.PP
The
.BR IPC_INFO ,
.BR MSG_STAT ,
msgget \- get a System V message queue identifier
.SH SYNOPSIS
.nf
-.B #include <sys/ipc.h>
.B #include <sys/msg.h>
.PP
.BI "int msgget(key_t " key ", int " msgflg );
.SH CONFORMING TO
POSIX.1-2001, POSIX.1-2008, SVr4.
.SH NOTES
-The inclusion of
-.I <sys/ipc.h>
-isn't required on Linux or by any version of POSIX.
-However,
-some old implementations required the inclusion of this header file,
-and the SVID also documented its inclusion.
-Applications intended to be portable to such old systems may need
-to include this header file.
-.\" Like Linux, the FreeBSD man pages still document
-.\" the inclusion of this header file.
-.PP
.B IPC_PRIVATE
isn't a flag field but a
.I key_t
msgrcv, msgsnd \- System V message queue operations
.SH SYNOPSIS
.nf
-.B #include <sys/ipc.h>
.B #include <sys/msg.h>
.PP
.BI "int msgsnd(int " msqid ", const void *" msgp ", size_t " msgsz \
.\" MSG_COPY since glibc 2.18
feature test macro.
.SH NOTES
-The inclusion of
-.I <sys/ipc.h>
-isn't required on Linux or by any version of POSIX.
-However,
-some old implementations required the inclusion of this header file,
-and the SVID also documented its inclusion.
-Applications intended to be portable to such old systems may need
-to include this header file.
-.\" Like Linux, the FreeBSD man pages still document
-.\" the inclusion of this header file.
-.PP
The
.I msgp
argument is declared as \fIstruct msgbuf\ *\fP in
semctl \- System V semaphore control operations
.SH SYNOPSIS
.nf
-.B #include <sys/ipc.h>
.B #include <sys/sem.h>
.PP
.BI "int semctl(int " semid ", int " semnum ", int " cmd ", ...);"
but, since Linux 2.4, the field has the type
.IR "unsigned\ long" .
.SH NOTES
-The inclusion of
-.I <sys/ipc.h>
-isn't required on Linux or by any version of POSIX.
-However,
-some old implementations required the inclusion of this header file,
-and the SVID also documented its inclusion.
-Applications intended to be portable to such old systems may need
-to include this header file.
-.\" Like Linux, the FreeBSD man pages still document
-.\" the inclusion of these header files.
-.PP
The
.BR IPC_INFO ,
.BR SEM_STAT ,
semget \- get a System V semaphore set identifier
.SH SYNOPSIS
.nf
-.B #include <sys/ipc.h>
.B #include <sys/sem.h>
.fi
.PP
.\" SVr4 documents additional error conditions EFBIG, E2BIG, EAGAIN,
.\" ERANGE, EFAULT.
.SH NOTES
-The inclusion of
-.I <sys/ipc.h>
-isn't required on Linux or by any version of POSIX.
-However,
-some old implementations required the inclusion of this header file,
-and the SVID also documented its inclusion.
-Applications intended to be portable to such old systems may need
-to include this header file.
-.\" Like Linux, the FreeBSD man pages still document
-.\" the inclusion of this header file.
-.PP
.B IPC_PRIVATE
isn't a flag field but a
.I key_t
semop, semtimedop \- System V semaphore operations
.SH SYNOPSIS
.nf
-.B #include <sys/ipc.h>
.B #include <sys/sem.h>
.PP
.BI "int semop(int " semid ", struct sembuf *" sops ", size_t " nsops );
POSIX.1-2001, POSIX.1-2008, SVr4.
.\" SVr4 documents additional error conditions EINVAL, EFBIG, ENOSPC.
.SH NOTES
-The inclusion of
-.I <sys/ipc.h>
-isn't required on Linux or by any version of POSIX.
-However,
-some old implementations required the inclusion of this header file,
-and the SVID also documented its inclusion.
-Applications intended to be portable to such old systems may need
-to include this header file.
-.\" Like Linux, the FreeBSD man pages still document
-.\" the inclusion of this header file.
-.PP
The
.I sem_undo
structures of a process aren't inherited by the child produced by
.SH SYNOPSIS
.nf
.ad l
-.B #include <sys/ipc.h>
.B #include <sys/shm.h>
.PP
.BI "int shmctl(int " shmid ", int " cmd ", struct shmid_ds *" buf );
.\" ENOENT, ENOSPC, ENOMEM, EEXIST. Neither SVr4 nor SVID documents
.\" an EIDRM error condition.
.SH NOTES
-The inclusion of
-.I <sys/ipc.h>
-isn't required on Linux or by any version of POSIX.
-However,
-some old implementations required the inclusion of this header file,
-and the SVID also documented its inclusion.
-Applications intended to be portable to such old systems may need
-to include this header file.
-.\" Like Linux, the FreeBSD man pages still document
-.\" the inclusion of this header file.
-.PP
The
.BR IPC_INFO ,
.BR SHM_STAT ,
.SH SYNOPSIS
.nf
.ad l
-.B #include <sys/ipc.h>
.B #include <sys/shm.h>
.PP
.BI "int shmget(key_t " key ", size_t " size ", int " shmflg );
.B SHM_NORESERVE
are Linux extensions.
.SH NOTES
-The inclusion of
-.I <sys/types.h>
-and
-.I <sys/ipc.h>
-isn't required on Linux or by any version of POSIX.
-However,
-some old implementations required the inclusion of these header files,
-and the SVID also documented their inclusion.
-Applications intended to be portable to such old systems may need
-to include these header files.
-.\" Like Linux, the FreeBSD man pages still document
-.\" the inclusion of these header files.
-.PP
.B IPC_PRIVATE
isn't a flag field but a
.I key_t
ftok \- convert a pathname and a project identifier to a System V IPC key
.SH SYNOPSIS
.nf
-.B #include <sys/types.h>
.B #include <sys/ipc.h>
.fi
.PP