[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 10/24] linux-user: Fix wrong type used for argument t
From: |
riku . voipio |
Subject: |
[Qemu-devel] [PULL 10/24] linux-user: Fix wrong type used for argument to rt_sigqueueinfo |
Date: |
Fri, 24 Jun 2016 12:53:05 +0300 |
From: Peter Maydell <address@hidden>
The third argument to the rt_sigqueueinfo syscall is a pointer to
a siginfo_t, not a pointer to a sigset_t. Fix the error in the
arguments to lock_user(), which meant that we would not have
detected some faults that we should.
Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>
---
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 95eafeb..686ebfb 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -7876,8 +7876,11 @@ abi_long do_syscall(void *cpu_env, int num, abi_long
arg1,
case TARGET_NR_rt_sigqueueinfo:
{
siginfo_t uinfo;
- if (!(p = lock_user(VERIFY_READ, arg3, sizeof(target_sigset_t),
1)))
+
+ p = lock_user(VERIFY_READ, arg3, sizeof(target_siginfo_t), 1);
+ if (!p) {
goto efault;
+ }
target_to_host_siginfo(&uinfo, p);
unlock_user(p, arg1, 0);
ret = get_errno(sys_rt_sigqueueinfo(arg1, arg2, &uinfo));
--
2.1.4
- [Qemu-devel] [PULL 04/24] linux-user: Don't use sigfillset() on uc->uc_sigmask, (continued)
- [Qemu-devel] [PULL 04/24] linux-user: Don't use sigfillset() on uc->uc_sigmask, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 05/24] configure: Don't override ARCH=unknown if enabling TCI, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 02/24] linux-user: Use __get_user() and __put_user() to handle structs in do_fcntl(), riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 01/24] linux-user: Avoid possible misalignment in host_to_target_siginfo(), riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 06/24] configure: Don't allow user-only targets for unknown CPU architectures, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 03/24] linux-user: Use safe_syscall wrapper for fcntl, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 08/24] user-exec: Remove unused code for OSX hosts, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 07/24] user-exec: Delete now-unused hppa and m68k cpu_signal_handler() code, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 09/24] linux-user: Create a hostdep.h for each host architecture, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 11/24] linux-user: Support F_GETPIPE_SZ and F_SETPIPE_SZ fcntls, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 10/24] linux-user: Fix wrong type used for argument to rt_sigqueueinfo,
riku . voipio <=
- [Qemu-devel] [PULL 13/24] linux-user: add socket() strace, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 14/24] linux-user: fix clone() strace, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 15/24] linux-user: update get_thread_area/set_thread_area strace, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 19/24] linux-user: fix x86_64 safe_syscall, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 12/24] linux-user: add socketcall() strace, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 17/24] linux-user: fd_trans_host_to_target_data() must process only received data, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 16/24] linux-user: add missing return in netlink switch statement, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 18/24] linux-user: don't swap NLMSG_DATA() fields, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 20/24] linux-user: Provide safe_syscall for i386, riku . voipio, 2016/06/24
- [Qemu-devel] [PULL 22/24] linux-user: Provide safe_syscall for aarch64, riku . voipio, 2016/06/24