diff options
author | brooks <brooks@FreeBSD.org> | 2017-05-12 17:40:34 +0000 |
---|---|---|
committer | brooks <brooks@FreeBSD.org> | 2017-05-12 17:40:34 +0000 |
commit | 4d2f018c82bbae44270cd376e30c08b4f6c02b77 (patch) | |
tree | 0f8e0daf59a1e57f305f0d84eba8c812529fb7e6 /sys/sys/syscallsubr.h | |
parent | 2d1b658f1483422dc496ae5fe3392b5d11b7715b (diff) | |
download | FreeBSD-src-4d2f018c82bbae44270cd376e30c08b4f6c02b77.zip FreeBSD-src-4d2f018c82bbae44270cd376e30c08b4f6c02b77.tar.gz |
MFC r317845-r317846
r317845:
Provide a freebsd32 implementation of sigqueue()
The previous misuse of sys_sigqueue() was sending random register or
stack garbage to 64-bit targets. The freebsd32 implementation preserves
the sival_int member of value when signaling a 64-bit process.
Document the mixed ABI implementation of union sigval and the
incompability of sival_ptr with pointer integrity schemes.
Reviewed by: kib, wblock
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D10605
r317846:
Regen post r317845.
MFC with: r317845
Sponsored by: DARPA, AFRL
Diffstat (limited to 'sys/sys/syscallsubr.h')
-rw-r--r-- | sys/sys/syscallsubr.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/sys/syscallsubr.h b/sys/sys/syscallsubr.h index 16af617..88b6c95 100644 --- a/sys/sys/syscallsubr.h +++ b/sys/sys/syscallsubr.h @@ -252,6 +252,8 @@ int kern_sigprocmask(struct thread *td, int how, int kern_sigsuspend(struct thread *td, sigset_t mask); int kern_sigtimedwait(struct thread *td, sigset_t waitset, struct ksiginfo *ksi, struct timespec *timeout); +int kern_sigqueue(struct thread *td, pid_t pid, int signum, + union sigval *value); int kern_socket(struct thread *td, int domain, int type, int protocol); int kern_statat(struct thread *td, int flag, int fd, char *path, enum uio_seg pathseg, struct stat *sbp, |