--- a/net80211/ieee80211_crypto_ccmp.c +++ b/net80211/ieee80211_crypto_ccmp.c @@ -273,7 +273,9 @@ ccmp_decap(struct ieee80211_key *k, stru tid = ((struct ieee80211_qosframe *)wh)->i_qos[0] & IEEE80211_QOS_TID; /* NB: assume IEEE80211_WEP_MINLEN covers the extended IV */ pn = READ_6(ivp[0], ivp[1], ivp[4], ivp[5], ivp[6], ivp[7]); - if (pn && pn <= k->wk_keyrsc[tid]) { + if ((vap->iv_opmode != IEEE80211_M_IBSS) && + (vap->iv_opmode != IEEE80211_M_AHDEMO) && + (pn && pn <= k->wk_keyrsc[tid])) { /* * Replay violation. */