diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2008-05-01 10:43:04 +0200 |
---|---|---|
committer | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2008-05-01 19:55:23 +0200 |
commit | 07c7224cf74c3977c69c7c9a0b0fba264f2df36a (patch) | |
tree | 5631421f793e43e990820f33bdf6eb981f586792 /drivers/ieee1394 | |
parent | e38649702ea64fdbbab3dd459bf8558142dd3bc4 (diff) | |
download | kernel_samsung_smdk4412-07c7224cf74c3977c69c7c9a0b0fba264f2df36a.zip kernel_samsung_smdk4412-07c7224cf74c3977c69c7c9a0b0fba264f2df36a.tar.gz kernel_samsung_smdk4412-07c7224cf74c3977c69c7c9a0b0fba264f2df36a.tar.bz2 |
ieee1394: fix NULL pointer dereference in sysfs access
Regression since "ieee1394: prevent device binding of raw1394,
video1394, dv1394", commit d2ace29fa44589da51fedc06a67b3f05301f3bfd:
$ cat /sys/bus/ieee1394/drivers/raw1394/device_ids
triggers a NULL pointer dereference in fw_show_drv_device_ids.
Reported by Miles Lane.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Tested-by: Miles Lane <miles.lane@gmail.com>
Diffstat (limited to 'drivers/ieee1394')
-rw-r--r-- | drivers/ieee1394/nodemgr.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/ieee1394/nodemgr.c b/drivers/ieee1394/nodemgr.c index 70afa37..c6babe8 100644 --- a/drivers/ieee1394/nodemgr.c +++ b/drivers/ieee1394/nodemgr.c @@ -520,8 +520,11 @@ static ssize_t fw_show_drv_device_ids(struct device_driver *drv, char *buf) char *scratch = buf; driver = container_of(drv, struct hpsb_protocol_driver, driver); + id = driver->id_table; + if (!id) + return 0; - for (id = driver->id_table; id->match_flags != 0; id++) { + for (; id->match_flags != 0; id++) { int need_coma = 0; if (id->match_flags & IEEE1394_MATCH_VENDOR_ID) { |