mac80211: extend get_key() to return PN for all ciphers

For ciphers not supported by mac80211, the function currently
doesn't return any PN data. Fix this by extending the driver's
get_key_seq() a little more to allow moving arbitrary PN data.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
Johannes Berg
2015-04-20 18:21:58 +02:00
parent 9352c19f63
commit a31cf1c69e
4 changed files with 19 additions and 4 deletions

View File

@@ -1501,6 +1501,8 @@ struct ieee80211_key_conf {
u8 key[0];
};
#define IEEE80211_MAX_PN_LEN 16
/**
* struct ieee80211_key_seq - key sequence counter
*
@@ -1513,6 +1515,7 @@ struct ieee80211_key_conf {
* reverse order than in packet)
* @gcmp: PN data, most significant byte first (big endian,
* reverse order than in packet)
* @hw: data for HW-only (e.g. cipher scheme) keys
*/
struct ieee80211_key_seq {
union {
@@ -1532,6 +1535,10 @@ struct ieee80211_key_seq {
struct {
u8 pn[6];
} gcmp;
struct {
u8 seq[IEEE80211_MAX_PN_LEN];
u8 seq_len;
} hw;
};
};