]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
av7110: check for negative array offset
authorDan Carpenter <error27@gmail.com>
Fri, 7 Jan 2011 19:41:54 +0000 (16:41 -0300)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 2 Mar 2011 14:46:37 +0000 (09:46 -0500)
commit cb26a24ee9706473f31d34cc259f4dcf45cd0644 upstream.

info->num comes from the user.  It's type int.  If the user passes
in a negative value that would cause memory corruption.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/media/dvb/ttpci/av7110_ca.c

index c7a65b1544a330e34a2e500883981336ba23c6c4..c878dad974aa0f813bc62066b3417997ba43dc22 100644 (file)
@@ -277,7 +277,7 @@ static int dvb_ca_ioctl(struct inode *inode, struct file *file,
        {
                ca_slot_info_t *info=(ca_slot_info_t *)parg;
 
-               if (info->num > 1)
+               if (info->num < 0 || info->num > 1)
                        return -EINVAL;
                av7110->ci_slot[info->num].num = info->num;
                av7110->ci_slot[info->num].type = FW_CI_LL_SUPPORT(av7110->arm_app) ?