mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-24 15:42:32 +00:00
mac80211: support getting key sequence counters via cfg80211
This implements cfg80211's get_key() to allow retrieving the sequence counter for a TKIP or CCMP key from userspace. It also cleans up and documents the associated low-level driver interface. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e8cbb4cbeb
commit
62da92fb75
2 changed files with 89 additions and 10 deletions
|
@ -647,9 +647,6 @@ struct ieee80211_key_conf {
|
|||
u8 key[0];
|
||||
};
|
||||
|
||||
#define IEEE80211_SEQ_COUNTER_RX 0
|
||||
#define IEEE80211_SEQ_COUNTER_TX 1
|
||||
|
||||
/**
|
||||
* enum set_key_cmd - key command
|
||||
*
|
||||
|
@ -996,9 +993,9 @@ enum ieee80211_erp_change_flags {
|
|||
*
|
||||
* @get_stats: return low-level statistics
|
||||
*
|
||||
* @get_sequence_counter: For devices that have internal sequence counters this
|
||||
* callback allows mac80211 to access the current value of a counter.
|
||||
* This callback seems not well-defined, tell us if you need it.
|
||||
* @get_tkip_seq: If your device implements TKIP encryption in hardware this
|
||||
* callback should be provided to read the TKIP transmit IVs (both IV32
|
||||
* and IV16) for the given key from hardware.
|
||||
*
|
||||
* @set_rts_threshold: Configuration of RTS threshold (if device needs it)
|
||||
*
|
||||
|
@ -1073,9 +1070,8 @@ struct ieee80211_ops {
|
|||
int (*hw_scan)(struct ieee80211_hw *hw, u8 *ssid, size_t len);
|
||||
int (*get_stats)(struct ieee80211_hw *hw,
|
||||
struct ieee80211_low_level_stats *stats);
|
||||
int (*get_sequence_counter)(struct ieee80211_hw *hw,
|
||||
u8* addr, u8 keyidx, u8 txrx,
|
||||
u32* iv32, u16* iv16);
|
||||
void (*get_tkip_seq)(struct ieee80211_hw *hw, u8 hw_key_idx,
|
||||
u32 *iv32, u16 *iv16);
|
||||
int (*set_rts_threshold)(struct ieee80211_hw *hw, u32 value);
|
||||
int (*set_frag_threshold)(struct ieee80211_hw *hw, u32 value);
|
||||
int (*set_retry_limit)(struct ieee80211_hw *hw,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue