]> 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)
committerAK <andi@firstfloor.org>
Thu, 31 Mar 2011 18:58:04 +0000 (11:58 -0700)
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>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
drivers/media/dvb/ttpci/av7110_ca.c

index 4eba35a018e3de051db314ea573e9400ff2fd816..c38dd678fd203c369b1d77fc76f488a38a3fc543 100644 (file)
@@ -277,7 +277,7 @@ static int dvb_ca_ioctl(struct file *file, unsigned int cmd, void *parg)
        {
                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) ?