From c01bdbdbe5ff3ebd8877a257df716137548c603a Mon Sep 17 00:00:00 2001 From: Peter Maydell Date: Thu, 2 Jun 2016 17:54:19 +0100 Subject: linux-user: Use safe_syscall wrapper for rt_sigtimedwait syscall Use the safe_syscall wrapper for the rt_sigtimedwait syscall. Signed-off-by: Peter Maydell --- linux-user/syscall.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 559b4f7036..300edc43a5 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -710,6 +710,8 @@ safe_syscall6(ssize_t, recvfrom, int, fd, void *, buf, size_t, len, safe_syscall3(ssize_t, sendmsg, int, fd, const struct msghdr *, msg, int, flags) safe_syscall3(ssize_t, recvmsg, int, fd, struct msghdr *, msg, int, flags) safe_syscall2(int, flock, int, fd, int, operation) +safe_syscall4(int, rt_sigtimedwait, const sigset_t *, these, siginfo_t *, uinfo, + const struct timespec *, uts, size_t, sigsetsize) #ifdef __NR_msgsnd safe_syscall4(int, msgsnd, int, msgid, const void *, msgp, size_t, sz, int, flags) @@ -7110,7 +7112,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, } else { puts = NULL; } - ret = get_errno(sigtimedwait(&set, &uinfo, puts)); + ret = get_errno(safe_rt_sigtimedwait(&set, &uinfo, puts, + SIGSET_T_SIZE)); if (!is_error(ret)) { if (arg2) { p = lock_user(VERIFY_WRITE, arg2, sizeof(target_siginfo_t), -- cgit v1.2.3