]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
security: avoid calling a NULL function pointer in drivers/video/tvaudio.c
authorArjan van de Ven <arjan@linux.intel.com>
Sat, 11 Oct 2008 04:16:12 +0000 (21:16 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 22 Oct 2008 21:13:29 +0000 (14:13 -0700)
commit 5ba2f67afb02c5302b2898949ed6fc3b3d37dcf1 upstream

NULL function pointers are very bad security wise. This one got caught by
kerneloops.org quite a few times, so it's happening in the field....

Fix is simple, check the function pointer for NULL, like 6 other places
in the same function are already doing.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/media/video/tvaudio.c

index c77914d99d15c5972c94e9763a08b5789098e90a..0ce64e161e186886aa73e08925e98e91824f79c0 100644 (file)
@@ -1805,7 +1805,7 @@ static int chip_command(struct i2c_client *client,
                break;
        case VIDIOC_S_FREQUENCY:
                chip->mode = 0; /* automatic */
-               if (desc->checkmode) {
+               if (desc->checkmode && desc->setmode) {
                        desc->setmode(chip,V4L2_TUNER_MODE_MONO);
                        if (chip->prevmode != V4L2_TUNER_MODE_MONO)
                                chip->prevmode = -1; /* reset previous mode */