* [PATCH] arch: parisc: kernel: memory overflow, 'name' length is too short for using
@ 2013-05-27 4:57 Chen Gang
0 siblings, 0 replies; only message in thread
From: Chen Gang @ 2013-05-27 4:57 UTC (permalink / raw)
To: James E.J. Bottomley, Helge Deller
Cc: Parisc List, linux-kernel@vger.kernel.org, Linux-Arch
'path.bc[i]' can be asigned by PCI_SLOT() which can '> 10', so sizeof(6
* "%u:" + "%u" + '\0') may be 21.
Since 'name' length is 20, it may be memory overflow.
And 'path.bc[i]' is 'unsigned char' for printing, we can be sure the
max length of 'name' must be less than 28.
So simplify thinking, we can use 28 instead of 20 directly, and do not
think of whether 'patchc.bc[i]' can '> 100'.
Signed-off-by: Chen Gang <gang.chen@asianux.com>
---
arch/parisc/kernel/drivers.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/parisc/kernel/drivers.c b/arch/parisc/kernel/drivers.c
index 5709c5e..14285ca 100644
--- a/arch/parisc/kernel/drivers.c
+++ b/arch/parisc/kernel/drivers.c
@@ -394,7 +394,7 @@ EXPORT_SYMBOL(print_pci_hwpath);
static void setup_bus_id(struct parisc_device *padev)
{
struct hardware_path path;
- char name[20];
+ char name[28];
char *output = name;
int i;
--
1.7.7.6
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2013-05-27 4:58 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-27 4:57 [PATCH] arch: parisc: kernel: memory overflow, 'name' length is too short for using Chen Gang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox