diff options
author | Roel Kluin <roel.kluin@gmail.com> | 2009-08-08 00:14:20 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-09-15 12:01:34 -0700 |
commit | 4ff863b1db411481971de481002aa644057b1fa6 (patch) | |
tree | 5b6ef25ec5f31e80805e37a32ea0f49be3268ad9 /drivers/staging/comedi | |
parent | Staging: comedi: Remove references to dead EXPORT_SYMTAB (diff) | |
download | linux-dev-4ff863b1db411481971de481002aa644057b1fa6.tar.xz linux-dev-4ff863b1db411481971de481002aa644057b1fa6.zip |
Staging: comedi: s626: Possible read buffer overflow fix
If `cmd->chanlist_len' is 0, then we write ppl[-1].
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/comedi')
-rw-r--r-- | drivers/staging/comedi/drivers/s626.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/staging/comedi/drivers/s626.c b/drivers/staging/comedi/drivers/s626.c index 6549d116f2e6..80d2787d1063 100644 --- a/drivers/staging/comedi/drivers/s626.c +++ b/drivers/staging/comedi/drivers/s626.c @@ -1707,7 +1707,8 @@ static int s626_ai_load_polllist(uint8_t * ppl, struct comedi_cmd *cmd) else ppl[n] = (CR_CHAN((cmd->chanlist)[n])) | (RANGE_10V); } - ppl[n - 1] |= EOPL; + if (n != 0) + ppl[n - 1] |= EOPL; return n; } |