lkml.org 
[lkml]   [2009]   [Nov]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: CVE-2009-2584
    Date
    On Thursday 05 November 2009 18:38:21 Linus Torvalds wrote:
    > @@ -161,14 +161,15 @@ static int options_show(struct seq_file *s, void *p)
    > static ssize_t options_write(struct file *file, const char __user *userbuf,
    > size_t count, loff_t *data)
    > {
    > - unsigned long val;
    > - char buf[80];
    > + char buf[16];
    >
    > - if (strncpy_from_user(buf, userbuf, sizeof(buf) - 1) < 0)
    > + if (count >= sizeof(buf))
    > + return -EINVAL;
    > + if (copy_from_user(buf, userbuf, count))
    > return -EFAULT;
    > - buf[count - 1] = '\0';
    > - if (!strict_strtoul(buf, 10, &val))
    > - gru_options = val;
    > + buf[count] = '\0';
    > + if (strict_strtoul(buf, 0, &gru_options))
    > + return -EINVAL;
    >
    > return count;
    > }
    >
    >

    Looks OK to me. I can't test it however, as I don't own the hardware.

    --
    Greetings, Michael.


    \
     
     \ /
      Last update: 2009-11-05 18:49    [W:0.030 / U:31.548 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site