lkml.org 
[lkml]   [2009]   [Mar]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 2/2] ath5k: don't change mac in eeprom_read_mac on error
    Date
    Do not touch mac parameter passed to ath5k_eeprom_read_mac unless
    we are sure we have correct address. I.e. when returning error, do
    not change it.

    While at it, use '= {}' compiler trick for memsetting mac_d.

    Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
    Cc: Nick Kossifidis <jirislaby@gmail.com>
    Cc: Luis R. Rodriguez <lrodriguez@atheros.com>
    Cc: Bob Copeland <me@bobcopeland.com>
    ---
    drivers/net/wireless/ath5k/eeprom.c | 9 +++------
    1 files changed, 3 insertions(+), 6 deletions(-)

    diff --git a/drivers/net/wireless/ath5k/eeprom.c b/drivers/net/wireless/ath5k/eeprom.c
    index a54ee7e..ac45ca4 100644
    --- a/drivers/net/wireless/ath5k/eeprom.c
    +++ b/drivers/net/wireless/ath5k/eeprom.c
    @@ -1418,14 +1418,11 @@ ath5k_eeprom_init(struct ath5k_hw *ah)
    */
    int ath5k_eeprom_read_mac(struct ath5k_hw *ah, u8 *mac)
    {
    - u8 mac_d[ETH_ALEN];
    + u8 mac_d[ETH_ALEN] = {};
    u32 total, offset;
    u16 data;
    int octet, ret;

    - memset(mac, 0, ETH_ALEN);
    - memset(mac_d, 0, ETH_ALEN);
    -
    ret = ath5k_hw_eeprom_read(ah, 0x20, &data);
    if (ret)
    return ret;
    @@ -1441,11 +1438,11 @@ int ath5k_eeprom_read_mac(struct ath5k_hw *ah, u8 *mac)
    octet += 2;
    }

    - memcpy(mac, mac_d, ETH_ALEN);
    -
    if (!total || total == 3 * 0xffff)
    return -EINVAL;

    + memcpy(mac, mac_d, ETH_ALEN);
    +
    return 0;
    }

    --
    1.6.1.3


    \
     
     \ /
      Last update: 2009-03-07 10:45    [W:0.018 / U:73.868 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site