diff options
-rw-r--r-- | linux-user/syscall.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 092ff4ee21..5bc42c017e 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -9237,12 +9237,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, goto efault; ret = get_errno(sys_uname(buf)); if (!is_error(ret)) { - /* Overrite the native machine name with whatever is being + /* Overwrite the native machine name with whatever is being emulated. */ strcpy (buf->machine, cpu_to_uname_machine(cpu_env)); /* Allow the user to override the reported release. */ - if (qemu_uname_release && *qemu_uname_release) - strcpy (buf->release, qemu_uname_release); + if (qemu_uname_release && *qemu_uname_release) { + g_strlcpy(buf->release, qemu_uname_release, + sizeof(buf->release)); + } } unlock_user_struct(buf, arg1, 1); } |