lkml.org 
[lkml]   [2008]   [Apr]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 3/3] ThinkPad ACPI: fix possible NULL pointer dereference
[Pavel Machek - Fri, Apr 18, 2008 at 02:41:12PM +0200]
| Hi!
|
| > Fix potential NULL pointer dereference if kstrdup failed
| >
| > Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
| >
| > ---
| >
| > Index: linux-2.6.git/drivers/misc/thinkpad_acpi.c
| > ===================================================================
| > --- linux-2.6.git.orig/drivers/misc/thinkpad_acpi.c 2008-04-16 20:35:34.000000000 +0400
| > +++ linux-2.6.git/drivers/misc/thinkpad_acpi.c 2008-04-16 20:36:38.000000000 +0400
| > @@ -5826,7 +5826,7 @@ static void __init get_thinkpad_model_da
| >
| > tp->model_str = kstrdup(dmi_get_system_info(DMI_PRODUCT_VERSION),
| > GFP_KERNEL);
| > - if (strnicmp(tp->model_str, "ThinkPad", 8) != 0) {
| > + if (tp->model_str && strnicmp(tp->model_str, "ThinkPad", 8) != 0) {
| > kfree(tp->model_str);
| > tp->model_str = NULL;
| > }
|
| are you sure? This seems to assume machine is thinkpad if kstrdup
| fails... which is very wrong.

No, it's *not* wrong, look there we have

tp->model_str = kstrdup(dmi_get_system_info(DMI_PRODUCT_VERSION),
GFP_KERNEL);

lets assume we've got NULL here so probe_for_thinkpad() will check for it

is_thinkpad = (thinkpad_id.model_str != NULL);


Thanks for comment

- Cyrill -


\
 
 \ /
  Last update: 2008-04-18 14:59    [W:0.055 / U:0.304 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site