size_t data_len;
        unsigned int hdrlen;
        struct ieee80211_hdr *hdr;
-       u16 fc;
        struct sk_buff *skb = tx->skb;
        int authenticator;
        int wpa_test = 0;
        int tail;
 
-       fc = tx->fc;
-
+       hdr = (struct ieee80211_hdr *)skb->data;
        if (!tx->key || tx->key->conf.alg != ALG_TKIP || skb->len < 24 ||
-           !WLAN_FC_DATA_PRESENT(fc))
+           !ieee80211_is_data_present(hdr->frame_control))
                return TX_CONTINUE;
 
-       hdr = (struct ieee80211_hdr *)skb->data;
        hdrlen = ieee80211_hdrlen(hdr->frame_control);
        if (skb->len < hdrlen)
                return TX_DROP;
        size_t data_len;
        unsigned int hdrlen;
        struct ieee80211_hdr *hdr;
-       u16 fc;
        u8 mic[MICHAEL_MIC_LEN];
        struct sk_buff *skb = rx->skb;
        int authenticator = 1, wpa_test = 0;
        DECLARE_MAC_BUF(mac);
 
-       fc = rx->fc;
-
        /*
         * No way to verify the MIC if the hardware stripped it
         */
        if (rx->status->flag & RX_FLAG_MMIC_STRIPPED)
                return RX_CONTINUE;
 
+       hdr = (struct ieee80211_hdr *)skb->data;
        if (!rx->key || rx->key->conf.alg != ALG_TKIP ||
-           !(rx->fc & IEEE80211_FCTL_PROTECTED) || !WLAN_FC_DATA_PRESENT(fc))
+           !ieee80211_has_protected(hdr->frame_control) ||
+           !ieee80211_is_data_present(hdr->frame_control))
                return RX_CONTINUE;
 
-       hdr = (struct ieee80211_hdr *)skb->data;
        hdrlen = ieee80211_hdrlen(hdr->frame_control);
        if (skb->len < hdrlen + MICHAEL_MIC_LEN)
                return RX_DROP_UNUSABLE;
 
        hdrlen = ieee80211_hdrlen(hdr->frame_control);
 
-       if ((rx->fc & IEEE80211_FCTL_FTYPE) != IEEE80211_FTYPE_DATA)
+       if (!ieee80211_is_data(hdr->frame_control))
                return RX_CONTINUE;
 
        if (!rx->sta || skb->len - hdrlen < 12)
 ieee80211_rx_result
 ieee80211_crypto_ccmp_decrypt(struct ieee80211_rx_data *rx)
 {
-       struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) rx->skb->data;
+       struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)rx->skb->data;
        int hdrlen;
        struct ieee80211_key *key = rx->key;
        struct sk_buff *skb = rx->skb;
 
        hdrlen = ieee80211_hdrlen(hdr->frame_control);
 
-       if ((rx->fc & IEEE80211_FCTL_FTYPE) != IEEE80211_FTYPE_DATA)
+       if (!ieee80211_is_data(hdr->frame_control))
                return RX_CONTINUE;
 
        data_len = skb->len - hdrlen - CCMP_HDR_LEN - CCMP_MIC_LEN;