qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 7/7] linux-user: zero fstat buffer to initialize nse


From: Ulrich Hecht
Subject: [Qemu-devel] [PATCH 7/7] linux-user: zero fstat buffer to initialize nsec fields
Date: Fri, 24 Jul 2009 19:10:32 +0200

The fstat implementation does not initialize the nanosecond fields in the
stat buffer; this caused funny values to turn up there, preventing, for
instance, cp -p from preserving timestamps because utimensat rejected
the out-of-bounds nanosecond values. Resetting the entire structure
to zero fixes that.

Signed-off-by: Ulrich Hecht <address@hidden>
---
 linux-user/syscall.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 2dc86ff..b413b08 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5523,6 +5523,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
 
                 if (!lock_user_struct(VERIFY_WRITE, target_st, arg2, 0))
                     goto efault;
+                memset(target_st, 0, sizeof(*target_st));
                 __put_user(st.st_dev, &target_st->st_dev);
                 __put_user(st.st_ino, &target_st->st_ino);
                 __put_user(st.st_mode, &target_st->st_mode);
-- 
1.6.2.1





reply via email to

[Prev in Thread] Current Thread [Next in Thread]