Hey Adrian,

Just saw your email, I took a quick look and I was able to find a struct 
ieee80211_key_conf which contains the key material.
I suppose that the ath_node needs to be extracted from the ieee80211_sta -> 
drv_priv by looking up the source mac address in the struct ieee80211_hdr 
somewhere in ath9k_rx_accept()?
The ath_node could then give the ps_key which contains the key cache index. 
This function also houses decrypt_errors which could be used for detection.

I suppose that ieee80211_find_sta_by_ifaddr( ) with the destination and source 
mac as arguments would nicely fit the bill.
The struct ath_node could also contain the key material, which could then be 
used for the replumbing.

Any particular pattern I must follow when writing the key material? Or will 
ath_key_delete( ) followed by a ath_hw_set_keycache_entry( ) suffice?

Kind regards,

Michel Stam
--- Begin Message ---
Hi,

So, there's a keycache index in the RX packet telling you which
keycache entry it matched.

See if it's matching a keycache entry but then failing to decrypt; if
this is happening then an easy check would be "hit some threshold for
crypto failures" => "replumb that keycache slot."
This means ath9k would have to keep copies itself of all keycache
entries, which isn't a /bad/ thing..



-adrian


--- End Message ---
_______________________________________________
ath9k-devel mailing list
ath9k-devel@lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to