2009/3/7 Jiri Slaby <jirislaby@xxxxxxxxx>: > 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@xxxxxxxxx> > Cc: Nick Kossifidis <jirislaby@xxxxxxxxx> > Cc: Luis R. Rodriguez <lrodriguez@xxxxxxxxxxx> > Cc: Bob Copeland <me@xxxxxxxxxxxxxxx> > --- > 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; > } > Acked-by: Nick Kossifidis <mickflemm@xxxxxxxxx> -- GPG ID: 0xD21DB2DB As you read this post global entropy rises. Have Fun ;-) Nick -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html