lkml.org 
[lkml]   [2018]   [Jul]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 4/5] net: add support for nvmem to eth_platform_get_mac_address()
    > +		if (!IS_ERR(nvmem)) {
    > + addr = nvmem_cell_read(nvmem, &alen);
    > + if (!IS_ERR(addr)) {
    > + from = "nvmem";
    > + /* Don't use ether_addr_copy() in case we
    > + * didn't get the right size.
    > + */

    Please verify the size. A short read can still give a valid MAC
    address, so the is_valid_ether_addr(addr) is not sufficient.

    > + memcpy(addrbuf, addr, alen);

    Another reason to check the length is that you appear to have a buffer
    overflow here, if alen > 6.

    Andrew

    > + kfree(addr);
    > + addr = addrbuf;
    > + }
    > +
    > + nvmem_cell_put(nvmem);
    > + }
    > + }
    > +
    > if (!addr || !is_valid_ether_addr(addr))
    > return -ENODEV;
    >
    > --
    > 2.17.1
    >

    \
     
     \ /
      Last update: 2018-07-18 18:43    [W:4.248 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site