diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2004-12-06 22:58:05 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2004-12-06 22:58:05 +0000 |
commit | 978a66ff73add1f462903af92ccf9a34f6a513c2 (patch) | |
tree | bd1998bb2337ce725cc2de989389dd872b57401b /linux-user/syscall.c | |
parent | f7806f9467e059c128f7442b35ed366f2ccf06ce (diff) | |
download | qemu-978a66ff73add1f462903af92ccf9a34f6a513c2.zip qemu-978a66ff73add1f462903af92ccf9a34f6a513c2.tar.gz qemu-978a66ff73add1f462903af92ccf9a34f6a513c2.tar.bz2 |
utimes() support
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1164 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'linux-user/syscall.c')
-rw-r--r-- | linux-user/syscall.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index b2965bb..2407400 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -1742,6 +1742,20 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3, ret = get_errno(utime((const char *)arg1, tbuf1)); } break; + case TARGET_NR_utimes: + { + struct target_timeval *target_tvp = (struct target_timeval *)arg2; + struct timeval *tvp, tv[2]; + if (target_tvp) { + target_to_host_timeval(&tv[0], &target_tvp[0]); + target_to_host_timeval(&tv[1], &target_tvp[1]); + tvp = tv; + } else { + tvp = NULL; + } + ret = get_errno(utimes((const char *)arg1, tvp)); + } + break; #ifdef TARGET_NR_stty case TARGET_NR_stty: goto unimplemented; |