hostap: avoid uninitialized variable use in hfa384x_get_rid
authorArnd Bergmann <arnd@arndb.de>
Thu, 28 Jan 2016 21:58:28 +0000 (22:58 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Sat, 6 Feb 2016 11:59:24 +0000 (13:59 +0200)
commit48dc5fb3ba53b20418de8514700f63d88c5de3a3
tree1b9b1ea7d9fec869ac54c9eb353f2f48799e9e40
parent97f1a17109272b9f060cbd6d1d5be41528643000
hostap: avoid uninitialized variable use in hfa384x_get_rid

The driver reads a value from hfa384x_from_bap(), which may fail,
and then assigns the value to a local variable. gcc detects that
in in the failure case, the 'rlen' variable now contains
uninitialized data:

In file included from ../drivers/net/wireless/intersil/hostap/hostap_pci.c:220:0:
drivers/net/wireless/intersil/hostap/hostap_hw.c: In function 'hfa384x_get_rid':
drivers/net/wireless/intersil/hostap/hostap_hw.c:842:5: warning: 'rec' may be used uninitialized in this function [-Wmaybe-uninitialized]
  if (le16_to_cpu(rec.len) == 0) {

This restructures the function as suggested by Russell King, to
make it more readable and get more reliable error handling, by
handling each failure mode using a goto.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/intersil/hostap/hostap_hw.c