summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorChen Gang <gang.chen@asianux.com>2013-05-30 04:35:34 +0200
committerTony Luck <tony.luck@intel.com>2013-06-04 01:09:43 +0200
commit69cbc0464d87bfa38c0a4fe4d8bb751c1ec8cedf (patch)
tree7cffd82b2cc5f9429255df6785e5b890da8ba617 /arch
parent[IA64] pci: Remove unused fallback_dev (diff)
downloadlinux-69cbc0464d87bfa38c0a4fe4d8bb751c1ec8cedf.tar.xz
linux-69cbc0464d87bfa38c0a4fe4d8bb751c1ec8cedf.zip
[IA64] hpsim: Fix check for overlong simscsi prefix.
When "strlen(s) > MAX_ROOT_LEN", it has already said to use the default value, but in fact, it still use the input value. If happens, next sprintf() for 'fname' in simscsi_queuecommand_lck() may be memory overflow. Signed-off-by: Chen Gang <gang.chen@asianux.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/ia64/hp/sim/simscsi.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/ia64/hp/sim/simscsi.c b/arch/ia64/hp/sim/simscsi.c
index 331de723c676..3a428f19a001 100644
--- a/arch/ia64/hp/sim/simscsi.c
+++ b/arch/ia64/hp/sim/simscsi.c
@@ -88,8 +88,8 @@ simscsi_setup (char *s)
if (strlen(s) > MAX_ROOT_LEN) {
printk(KERN_ERR "simscsi_setup: prefix too long---using default %s\n",
simscsi_root);
- }
- simscsi_root = s;
+ } else
+ simscsi_root = s;
return 1;
}