summaryrefslogtreecommitdiff
path: root/drivers/media/firewire/firedtv-ci.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/firewire/firedtv-ci.c')
-rw-r--r--drivers/media/firewire/firedtv-ci.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/media/firewire/firedtv-ci.c b/drivers/media/firewire/firedtv-ci.c
index 9363d005e2b6..e0d57e09dab0 100644
--- a/drivers/media/firewire/firedtv-ci.c
+++ b/drivers/media/firewire/firedtv-ci.c
@@ -134,6 +134,8 @@ static int fdtv_ca_pmt(struct firedtv *fdtv, void *arg)
} else {
data_length = msg->msg[3];
}
+ if (data_length > sizeof(msg->msg) - data_pos)
+ return -EINVAL;
return avc_ca_pmt(fdtv, &msg->msg[data_pos], data_length);
}