Re: [PATCH] comedi: integer overflow in do_insnlist_ioctl()

Dan Carpenter
2011-11-23T21:51:27Z

[-- Attachment #1: Type: text/plain, Size: 657 bytes --]

On Wed, Nov 23, 2011 at 10:41:07PM +0100, Lars-Peter Clausen wrote:
> > if (insnlist.n_insns <= ULONG_MAX / sizeof(struct comedi_insn))
> > insns =
> > kmalloc(sizeof(struct comedi_insn) * insnlist.n_insns,
> > GFP_KERNEL);
> > if (!insns)
> > ...
> >
> > (note that insns is initialized to NULL).
> >
>
> Just use kcalloc, it will do the right thing for you.
>

I think the reason why I didn't do that in my original patch is that
kcalloc() has a memset(..., 0, ...) in it so it's a slow down. But
this isn't performance critical code so that would work.

regards,
dan carpenter

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]