created | 2021-08-03T07:26:11Z |
---|---|
begin | 2021-07-01T00:00:00Z |
end | 2021-07-02T00:00:00Z |
path | src/sys |
commits | 1 |
date | 2021-07-01T11:51:55Z | |||
---|---|---|---|---|
author | stsp | |||
files | src/sys/dev/ic/ar5008.c | log | diff | annotate |
message |
Prevent athn(4) from calling ieee80211_find_rxnode() on bad frames. This fixes an issue introduced with our workaround for bogus michael mic failures seen when hardware receives control frames. We do need to ignore the michael mic failure in this case but we should not call ieee80211_find_rxnode() on such frames unconditionally. Do this only if the transmitter's address has already been cached. When ieee80211_find_rxnode() is called with an unknown source MAC address it will create a new entry in the node cache. Frames flagged as incorrectly received by hardware should not be passed to ieee80211_find_rxnode() without further verification to avoid creating bogus cache entries based on corrupt frame headers. Prompted by an issue seen by kettenis@ on arm64 where the node cache contains bogus entries. This change doesn't fix the issue but it is a step in the right direction regardless since it fixes one possible cause for the issue. ok kettenis@ tested by myself and Mikolaj Kucharski |