--- a/net80211/ieee80211.h +++ b/net80211/ieee80211.h @@ -174,8 +174,6 @@ struct ieee80211_ctlframe_addr2 { #define IEEE80211_SEQ_SEQ_MASK 0xfff0 #define IEEE80211_SEQ_SEQ_SHIFT 4 -#define IEEE80211_SEQ_LEQ(a,b) ((int)((a)-(b)) <= 0) - #define IEEE80211_NWID_LEN 32 #define IEEE80211_QOS_TXOP 0x00ff --- a/net80211/ieee80211_input.c +++ b/net80211/ieee80211_input.c @@ -428,7 +428,7 @@ ieee80211_input(struct ieee80211vap * va tid = 0; rxseq = le16toh(*(__le16 *)wh->i_seq); if ((wh->i_fc[1] & IEEE80211_FC1_RETRY) && - IEEE80211_SEQ_LEQ(rxseq, ni->ni_rxseqs[tid])) { + (rxseq == ni->ni_rxseqs[tid])) { /* duplicate, discard */ IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT, bssid, "duplicate",