Subject: [PATCH] Fix thinko in mips/mips64 sys_sysmips

From: Ben Collins <[email-masked]>
Date: Mon, 26 May 2003 10:37:55 -0400

This has already been fixed in Linus' tree. Here's hoping it gets into
2.4 sometime soon. Note in the patch that "node" is the userspace
pointer and "nodename" is the string where "node" was
strncpy_from_user()'d to.

So it really should be using "nodename".

Index: linux-2.4/arch/mips64/kernel/syscall.c
===================================================================
--- linux-2.4/arch/mips64/kernel/syscall.c	(revision 3226)
+++ linux-2.4/arch/mips64/kernel/syscall.c	(working copy)
@@ -207,7 +207,7 @@
 			return -EFAULT;
 
 		down_write(&uts_sem);
-		strncpy(system_utsname.nodename, name, len);
+		strncpy(system_utsname.nodename, nodename, len);
 		system_utsname.nodename[len] = '\0';
 		up_write(&uts_sem);
 		return 0;
Index: linux-2.4/arch/mips/kernel/sysmips.c
===================================================================
--- linux-2.4/arch/mips/kernel/sysmips.c	(revision 3226)
+++ linux-2.4/arch/mips/kernel/sysmips.c	(working copy)
@@ -65,7 +65,7 @@
 			return -EFAULT;
 
 		down_write(&uts_sem);
-		strncpy(system_utsname.nodename, name, len);
+		strncpy(system_utsname.nodename, nodename, len);
 		system_utsname.nodename[len] = '\0';
 		up_write(&uts_sem);
 		return 0;

---

From: Ralf Baechle <[email-masked]>
Date: Tue, 27 May 2003 06:24:42 +0200

> So it really should be using "nodename".

Thanks, applied.

This function being an afaik unused stoneage compatibility function is
a candidate to die anyway ...

  Ralf