| From: Johannes Berg <johannes.berg@intel.com> |
| Date: Tue, 15 Sep 2015 14:36:09 +0200 |
| Subject: iwlwifi: dvm: fix D3 firmware PN programming |
| |
| commit 5bd166872d8f99f156fac191299d24f828bb2348 upstream. |
| |
| The code to send the RX PN data (for each TID) to the firmware |
| has a devastating bug: it overwrites the data for TID 0 with |
| all the TID data, leaving the remaining TIDs zeroed. This will |
| allow replays to actually be accepted by the firmware, which |
| could allow waking up the system. |
| |
| Signed-off-by: Johannes Berg <johannes.berg@intel.com> |
| Signed-off-by: Luca Coelho <luciano.coelho@intel.com> |
| [bwh: Backported to 3.2: adjust filename] |
| Signed-off-by: Ben Hutchings <ben@decadent.org.uk> |
| --- |
| drivers/net/wireless/iwlwifi/iwl-agn.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/net/wireless/iwlwifi/iwl-agn.c |
| +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c |
| @@ -2001,7 +2001,7 @@ static void iwlagn_wowlan_program_keys(s |
| u8 *pn = seq.ccmp.pn; |
| |
| ieee80211_get_key_rx_seq(key, i, &seq); |
| - aes_sc->pn = cpu_to_le64( |
| + aes_sc[i].pn = cpu_to_le64( |
| (u64)pn[5] | |
| ((u64)pn[4] << 8) | |
| ((u64)pn[3] << 16) | |