staging: comedi: check data length for INSN_CONFIG_DIGITAL_TRIG
authorIan Abbott <abbotti@mev.co.uk>
Wed, 14 Nov 2012 11:22:57 +0000 (11:22 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 15 Nov 2012 00:25:08 +0000 (16:25 -0800)
The newly defined format for the `INSN_CONFIG_DIGITAL_TRIG`
configuration instruction expects 6 data values.  Check the length in
`check_insn_config_length()` before calling the comedi subdevice's
`insn_config` handler.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/comedi_fops.c

index c2a32cf95a82a76888810fed16708ea742be2317..06906f6f7f49989d3b7368b462836719a2f48ae5 100644 (file)
@@ -880,6 +880,10 @@ static int check_insn_config_length(struct comedi_insn *insn,
                if (insn->n == 5)
                        return 0;
                break;
+       case INSN_CONFIG_DIGITAL_TRIG:
+               if (insn->n == 6)
+                       return 0;
+               break;
                /* by default we allow the insn since we don't have checks for
                 * all possible cases yet */
        default: