[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 2/5] linux-user: Fix memchr() argument in open_self_c
From: |
riku . voipio |
Subject: |
[Qemu-devel] [PULL 2/5] linux-user: Fix memchr() argument in open_self_cmdline() |
Date: |
Thu, 4 Aug 2016 17:15:02 +0300 |
From: Peter Maydell <address@hidden>
In open_self_cmdline() we look for a 0 in the buffer we read
from /prc/self/cmdline. We were incorrectly passing the length
of our buf[] array to memchr() as the length to search, rather
than the number of bytes we actually read into it, which could
be shorter. This was spotted by Coverity (because it could
result in our trying to pass a negative length argument to
write()).
Signed-off-by: Peter Maydell <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>
---
linux-user/syscall.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index ca6a2b4..092ff4e 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -6856,7 +6856,7 @@ static int open_self_cmdline(void *cpu_env, int fd)
if (!word_skipped) {
/* Skip the first string, which is the path to qemu-*-static
instead of the actual command. */
- cp_buf = memchr(buf, 0, sizeof(buf));
+ cp_buf = memchr(buf, 0, nb_read);
if (cp_buf) {
/* Null byte found, skip one string */
cp_buf++;
--
2.1.4
- [Qemu-devel] [PULL 0/5] linux-user fixes for 2.7, riku . voipio, 2016/08/04
- [Qemu-devel] [PULL 1/5] linux-user: Use correct alignment for long long on i386 guests, riku . voipio, 2016/08/04
- [Qemu-devel] [PULL 3/5] linux-user: Don't write off end of new_utsname buffer, riku . voipio, 2016/08/04
- [Qemu-devel] [PULL 4/5] linux-user: Fix target_semid_ds structure definition, riku . voipio, 2016/08/04
- [Qemu-devel] [PULL 5/5] linux-user: Handle brk() attempts with very large sizes, riku . voipio, 2016/08/04
- [Qemu-devel] [PULL 2/5] linux-user: Fix memchr() argument in open_self_cmdline(),
riku . voipio <=
- Re: [Qemu-devel] [PULL 0/5] linux-user fixes for 2.7, Peter Maydell, 2016/08/05