madwifi: fix sequence number check on incoming retransmit checks
[openwrt.git] / package / madwifi / patches / 405-retransmit_check.patch
1 Index: madwifi-trunk-r3314/net80211/ieee80211.h
2 ===================================================================
3 --- madwifi-trunk-r3314.orig/net80211/ieee80211.h       2008-07-01 22:16:19.000000000 +0200
4 +++ madwifi-trunk-r3314/net80211/ieee80211.h    2008-07-01 22:17:12.000000000 +0200
5 @@ -174,8 +174,6 @@
6  #define        IEEE80211_SEQ_SEQ_MASK                  0xfff0
7  #define        IEEE80211_SEQ_SEQ_SHIFT                 4
8  
9 -#define        IEEE80211_SEQ_LEQ(a,b)  ((int)((a)-(b)) <= 0)
10 -
11  #define        IEEE80211_NWID_LEN                      32
12  
13  #define        IEEE80211_QOS_TXOP                      0x00ff
14 Index: madwifi-trunk-r3314/net80211/ieee80211_input.c
15 ===================================================================
16 --- madwifi-trunk-r3314.orig/net80211/ieee80211_input.c 2008-07-01 22:17:11.000000000 +0200
17 +++ madwifi-trunk-r3314/net80211/ieee80211_input.c      2008-07-01 22:17:49.000000000 +0200
18 @@ -412,7 +412,7 @@
19                                 tid = 0;
20                         rxseq = le16toh(*(__le16 *)wh->i_seq);
21                         if ((wh->i_fc[1] & IEEE80211_FC1_RETRY) &&
22 -                           IEEE80211_SEQ_LEQ(rxseq, ni->ni_rxseqs[tid])) {
23 +                           (rxseq == ni->ni_rxseqs[tid])) {
24                                 /* duplicate, discard */
25                                 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT,
26                                         bssid, "duplicate",