2 drivers/dsp/bridge/pmgr/wcd.c | 12 ++++++++++--
3 1 files changed, 10 insertions(+), 2 deletions(-)
5 Index: kernel-power-2.6.28/drivers/dsp/bridge/pmgr/wcd.c
6 ===================================================================
7 --- kernel-power-2.6.28.orig/drivers/dsp/bridge/pmgr/wcd.c
8 +++ kernel-power-2.6.28/drivers/dsp/bridge/pmgr/wcd.c
10 u32 *result, void *pr_ctxt)
12 u32 (*ioctl_cmd)(union Trapped_Args *args, void *pr_ctxt) = NULL;
16 if (_IOC_TYPE(cmd) != DB) {
17 pr_err("%s: Incompatible dspbridge ioctl number\n", __func__);
21 +#ifdef CONFIG_BRIDGE_NEW_API
22 if (DB_GET_IOC_TABLE(cmd) > ARRAY_SIZE(size_cmd)) {
24 + if (DB_GET_IOC_TABLE(cmd) >= ARRAY_SIZE(size_cmd)) {
26 pr_err("%s: undefined ioctl module\n", __func__);
30 /* Check the size of the required cmd table */
32 +#ifdef CONFIG_BRIDGE_NEW_API
33 if (i > size_cmd[DB_GET_IOC_TABLE(cmd)]) {
35 + if (i >= size_cmd[DB_GET_IOC_TABLE(cmd)]) {
38 pr_err("%s: requested ioctl %d out of bounds for table %d\n",
39 __func__, i, DB_GET_IOC_TABLE(cmd));