[PATCH] ieee80211: WLAN_GET_SEQ_SEQ fix (select correct region)
[linux-drm-fsl-dcu.git] / include / net / ieee80211.h
index b174ebb277a96668f058e469b0753503c34f164b..e02d85f56e601d79c0ccb32ea4157ee890909cd3 100644 (file)
@@ -218,7 +218,7 @@ struct ieee80211_snap_hdr {
 #define WLAN_FC_GET_STYPE(fc) ((fc) & IEEE80211_FCTL_STYPE)
 
 #define WLAN_GET_SEQ_FRAG(seq) ((seq) & IEEE80211_SCTL_FRAG)
-#define WLAN_GET_SEQ_SEQ(seq)  ((seq) & IEEE80211_SCTL_SEQ)
+#define WLAN_GET_SEQ_SEQ(seq)  (((seq) & IEEE80211_SCTL_SEQ) >> 4)
 
 /* Authentication algorithms */
 #define WLAN_AUTH_OPEN 0
@@ -1037,6 +1037,10 @@ struct ieee80211_device {
        /* host performs multicast decryption */
        int host_mc_decrypt;
 
+       /* host should strip IV and ICV from protected frames */
+       /* meaningful only when hardware decryption is being used */
+       int host_strip_iv_icv;
+
        int host_open_frag;
        int host_build_iv;
        int ieee802_1x;         /* is IEEE 802.1X used */
@@ -1076,6 +1080,8 @@ struct ieee80211_device {
        int perfect_rssi;
        int worst_rssi;
 
+       u16 prev_seq_ctl;       /* used to drop duplicate frames */
+
        /* Callback functions */
        void (*set_security) (struct net_device * dev,
                              struct ieee80211_security * sec);