.\" added note on self-signaling, aeb, 2002-06-07
.\" added note on CAP_KILL, mtk, 2004-06-16
.\"
-.TH SIGQUEUE 3 2015-07-23 "Linux" "Linux Programmer's Manual"
+.TH SIGQUEUE 3 2017-09-15 "Linux" "Linux Programmer's Manual"
.SH NAME
sigqueue \- queue a signal and data to a process
.SH SYNOPSIS
.B #include <signal.h>
-.sp
+.PP
.BI "int sigqueue(pid_t " pid ", int " sig ", const union sigval " value );
-.sp
+.PP
.in -4n
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.in
-.sp
+.PP
.BR sigqueue ():
_POSIX_C_SOURCE\ >=\ 199309L
.SH DESCRIPTION
.I value
argument is used to specify an accompanying item of data (either an integer
or a pointer value) to be sent with the signal, and has the following type:
-.sp
+.PP
.in +4n
-.nf
+.EX
union sigval {
int sival_int;
void *sival_ptr;
};
-.fi
+.EE
.in
-
+.PP
If the receiving process has installed a handler for this signal using the
.B SA_SIGINFO
flag to
T} Thread safety MT-Safe
.TE
.SH CONFORMING TO
-POSIX.1-2001.
+POSIX.1-2001, POSIX.1-2008.
.SH NOTES
If this function results in the sending of a signal to the process
that invoked it, and that signal was not blocked by the calling thread,
wrapper, this argument,
.IR uinfo ,
is initialized as follows:
+.PP
.in +4n
-.nf
-
+.EX
uinfo.si_signo = sig; /* Argument supplied to sigqueue() */
uinfo.si_code = SI_QUEUE;
uinfo.si_pid = getpid(); /* Process ID of sender */
uinfo.si_uid = getuid(); /* Real UID of sender */
uinfo.si_value = val; /* Argument supplied to sigqueue() */
-.fi
+.EE
.in
.SH SEE ALSO
.BR kill (2),