[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 07/13] signal/all/do_sigaltstack remove __get_use
From: |
riku . voipio |
Subject: |
[Qemu-devel] [PATCH v3 07/13] signal/all/do_sigaltstack remove __get_user value check |
Date: |
Tue, 10 Jun 2014 16:20:36 +0300 |
From: Riku Voipio <address@hidden>
Access is already checked in the lock_user_struct
call before.
Signed-off-by: Riku Voipio <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
---
linux-user/signal.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/linux-user/signal.c b/linux-user/signal.c
index 2a1c681..f55076d 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -619,11 +619,12 @@ abi_long do_sigaltstack(abi_ulong uss_addr, abi_ulong
uoss_addr, abi_ulong sp)
struct target_sigaltstack ss;
ret = -TARGET_EFAULT;
- if (!lock_user_struct(VERIFY_READ, uss, uss_addr, 1)
- || __get_user(ss.ss_sp, &uss->ss_sp)
- || __get_user(ss.ss_size, &uss->ss_size)
- || __get_user(ss.ss_flags, &uss->ss_flags))
+ if (!lock_user_struct(VERIFY_READ, uss, uss_addr, 1)) {
goto out;
+ }
+ __get_user(ss.ss_sp, &uss->ss_sp);
+ __get_user(ss.ss_size, &uss->ss_size);
+ __get_user(ss.ss_flags, &uss->ss_flags);
unlock_user_struct(uss, uss_addr, 0);
ret = -TARGET_EPERM;
--
2.0.0.rc2
- [Qemu-devel] [PATCH v3 00/13] linux-user: __{get, put}_user return value cleanup, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 02/13] signal/x86/setup_frame: __put_user cleanup, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 12/13] signal/ppc/do_setcontext remove __get_user return check, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 13/13] linux-user: fix gcc-4.9 compiler error on __{get, put]}_user, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 07/13] signal/all/do_sigaltstack remove __get_user value check,
riku . voipio <=
- [Qemu-devel] [PATCH v3 03/13] signal/all: remove return value from copy_siginfo_to_user, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 10/13] signal/ppc/{save, restore}_user_regs remove __put/get error checks, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 04/13] signal/all: remove return value from setup_sigcontext, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 08/13] signal/all/do_sigreturn - remove __get_user checks, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 09/13] signal/all/setup_frame remove __put_user checks, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 01/13] signal/all: remove __get/__put_user return value reading, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 06/13] signal/sparc/restore_fpu_state: remove, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 11/13] signal/sparc64_set_context: remove __get_user checks, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 05/13] signal/all: remove return value from restore_sigcontext, riku . voipio, 2014/06/10