[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] linux-user/syscall.c: Enforce pselect6 sigset size
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PATCH] linux-user/syscall.c: Enforce pselect6 sigset size restrictions |
Date: |
Tue, 28 Jun 2011 12:21:57 +0100 |
Enforce the same restriction on the size of the sigset passed to
pselect6 as the Linux kernel does. This is both correct and silences
a gcc 4.6 warning about a write-only variable.
Signed-off-by: Peter Maydell <address@hidden>
---
This really is the last gcc 4.6 warning fix!
linux-user/syscall.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index fed7a8f..feb2501 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5684,6 +5684,11 @@ abi_long do_syscall(void *cpu_env, int num, abi_long
arg1,
if (arg_sigset) {
sig.set = &set;
+ if (arg_sigsize != sizeof(*target_sigset)) {
+ /* Like the kernel, we enforce correct size sigsets */
+ ret = -TARGET_EINVAL;
+ goto fail;
+ }
target_sigset = lock_user(VERIFY_READ, arg_sigset,
sizeof(*target_sigset), 1);
if (!target_sigset) {
--
1.7.5.3
- [Qemu-devel] [PATCH] linux-user/syscall.c: Enforce pselect6 sigset size restrictions,
Peter Maydell <=