diff --git a/[refs] b/[refs] index 0b7d02fe3bd9..069a16312a97 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 929f37cb3c3e0f4d23d7106693b7067cf72f4dbc +refs/heads/master: 87988815073918134c0dae059cf247a4472d78ed diff --git a/trunk/kernel/sys.c b/trunk/kernel/sys.c index d5b79f65ad9b..558b035965aa 100644 --- a/trunk/kernel/sys.c +++ b/trunk/kernel/sys.c @@ -1350,7 +1350,8 @@ asmlinkage long sys_sethostname(char __user *name, int len) errno = -EFAULT; if (!copy_from_user(tmp, name, len)) { memcpy(utsname()->nodename, tmp, len); - utsname()->nodename[len] = 0; + memset(utsname()->nodename + len, 0, + sizeof(utsname()->nodename) - len); errno = 0; } up_write(&uts_sem); @@ -1396,7 +1397,8 @@ asmlinkage long sys_setdomainname(char __user *name, int len) errno = -EFAULT; if (!copy_from_user(tmp, name, len)) { memcpy(utsname()->domainname, tmp, len); - utsname()->domainname[len] = 0; + memset(utsname()->domainname + len, 0, + sizeof(utsname()->domainname) - len); errno = 0; } up_write(&uts_sem);