diff options
author | Ian Abbott | 2012-09-18 20:46:58 +0200 |
---|---|---|
committer | Greg Kroah-Hartman | 2012-09-19 12:26:13 +0200 |
commit | 5d06e3df280bd230e2eadc16372e62818c63e894 (patch) | |
tree | 9918f625d95258bb3c3e94a2cfad3be89306d974 /drivers/staging/comedi/comedi_fops.c | |
parent | staging: comedi: sparse warning in insn_rw_emulate_bits() (diff) | |
download | kernel-qcow2-linux-5d06e3df280bd230e2eadc16372e62818c63e894.tar.gz kernel-qcow2-linux-5d06e3df280bd230e2eadc16372e62818c63e894.tar.xz kernel-qcow2-linux-5d06e3df280bd230e2eadc16372e62818c63e894.zip |
staging: comedi: don't dereference user memory for INSN_INTTRIG
`parse_insn()` is dereferencing the user-space pointer `insn->data`
directly when handling the `INSN_INTTRIG` comedi instruction. It
shouldn't be using `insn->data` at all; it should be using the separate
`data` pointer passed to the function. Fix it.
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/comedi/comedi_fops.c')
-rw-r--r-- | drivers/staging/comedi/comedi_fops.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/staging/comedi/comedi_fops.c b/drivers/staging/comedi/comedi_fops.c index 9b9d4e8a2cf9..f496f4d96c83 100644 --- a/drivers/staging/comedi/comedi_fops.c +++ b/drivers/staging/comedi/comedi_fops.c @@ -950,7 +950,7 @@ static int parse_insn(struct comedi_device *dev, struct comedi_insn *insn, ret = -EAGAIN; break; } - ret = s->async->inttrig(dev, s, insn->data[0]); + ret = s->async->inttrig(dev, s, data[0]); if (ret >= 0) ret = 1; break; |