From d4a560c8b07bf56a3335aecd48ee5b97c99f8bdb Mon Sep 17 00:00:00 2001 From: Dan Carpenter Date: Thu, 7 Feb 2013 04:24:49 -0300 Subject: [PATCH] --- yaml --- r: 357543 b: refs/heads/master c: bf5bbed15c41228ea1abbb8d3931050922bfc37f h: refs/heads/master i: 357541: ad107da17e1c734753690a770d842b28d129189e 357539: bdb2e1b26cfba19106464afeb8f491a10ab584bc 357535: 77a7004512b36f3fd51e4827ee94252562d921bd v: v3 --- [refs] | 2 +- trunk/drivers/media/usb/ttusb-budget/dvb-ttusb-budget.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index d87f991740f6..b5868c59d22c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3e58ac14ad2c443d86c5bed0137a010fe4d16fe2 +refs/heads/master: bf5bbed15c41228ea1abbb8d3931050922bfc37f diff --git a/trunk/drivers/media/usb/ttusb-budget/dvb-ttusb-budget.c b/trunk/drivers/media/usb/ttusb-budget/dvb-ttusb-budget.c index 5b682cc4c814..e40718552850 100644 --- a/trunk/drivers/media/usb/ttusb-budget/dvb-ttusb-budget.c +++ b/trunk/drivers/media/usb/ttusb-budget/dvb-ttusb-budget.c @@ -561,6 +561,13 @@ static void ttusb_process_muxpack(struct ttusb *ttusb, const u8 * muxpack, { u16 csum = 0, cc; int i; + + if (len < 4 || len & 0x1) { + pr_warn("%s: muxpack has invalid len %d\n", __func__, len); + numinvalid++; + return; + } + for (i = 0; i < len; i += 2) csum ^= le16_to_cpup((__le16 *) (muxpack + i)); if (csum) {