Revert "CHROMIUM: mac80211: add packet filter logic"

This reverts commit 35e44b2719bcc714a186e3b74fb07b096dbf81ac.

Reason for revert: Due to the blocker issue b:201394499

Original change's description:
> CHROMIUM: mac80211: add packet filter logic
>
> Adding packet filtering logic so that
> corrupted packets are filtered right away
> as soon as we receive them.
>
> BUG=b:181758870
> TEST=Ran the long run test by running the multicast
> traffic and didn't find the packets drop due
> to the invalid pn value or corrupted header.
>
> Change-Id: I69bc869c79bcfdd447ed2039861bbe7e2b65b042
> Signed-off-by: Manikanta Pubbisetty <mpubbise@codeaurora.org>
> Signed-off-by: Maharaja Kennadyrajan <mkenna@codeaurora.org>
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3080025
> Reviewed-by: Srinivasa Duvvuri <sduvvuri@google.com>
> Reviewed-by: SHAMANTHA KUMAR PERAMACHANAHALLI RAMARAO <shamanthakumar@google.com>
> Commit-Queue: Julan Hsu <julanhsu@google.com>
> Tested-by: DHEERAJ KANIYALA MELINAPANJA <dmelinapanja@google.com>
> Tested-by: SHAMANTHA KUMAR PERAMACHANAHALLI RAMARAO <shamanthakumar@google.com>

Bug: b:181758870
Change-Id: Iefbfc3b821cf0e3813b01d3c50c8939dffab4416
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/3199526
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: SHAMANTHA KUMAR PERAMACHANAHALLI RAMARAO <shamanthakumar@google.com>
Reviewed-by: Srinivasa Duvvuri <sduvvuri@google.com>
Commit-Queue: SHAMANTHA KUMAR PERAMACHANAHALLI RAMARAO <shamanthakumar@google.com>
Commit-Queue: Srinivasa Duvvuri <sduvvuri@google.com>
Tested-by: SHAMANTHA KUMAR PERAMACHANAHALLI RAMARAO <shamanthakumar@google.com>
Auto-Submit: SHAMANTHA KUMAR PERAMACHANAHALLI RAMARAO <shamanthakumar@google.com>
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index 137a97e..dc2bb3b 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -1679,40 +1679,6 @@
 	return RX_CONTINUE;
 } /* ieee80211_rx_h_sta_process */
 
-static bool ieee80211_rx_filter_packet(struct ieee80211_rx_data *rx)
-{
-        struct sk_buff *skb = rx->skb;
-        struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data;
-        struct ieee80211s_hdr *mesh_hdr __maybe_unused;
-        u32 snap_offset = 0;
-        u16 sc;
-        unsigned int frag;
-
-        sc = le16_to_cpu(hdr->seq_ctrl);
-        frag = sc & IEEE80211_SCTL_FRAG;
-
-        /* Fragments do not have snap headers, so bypassing the
-         * snap header sanity check filter.
-         */
-        if (frag) {
-                return false;
-                //TODO Handle corrupted fragments
-        }
-
-        snap_offset = ieee80211_hdrlen(hdr->frame_control) +
-                        ieee80211_crypto_hdrlen(rx->key->conf.cipher);
-
-        if (ieee80211_vif_is_mesh(&rx->sdata->vif)) {
-                mesh_hdr = (struct ieee80211s_hdr *) (skb->data + snap_offset);
-                snap_offset += ieee80211_get_mesh_hdrlen(mesh_hdr);
-        }
-
-        if (likely(memcmp(skb->data + snap_offset, rfc1042_header, 3) == 0))
-                return false;
-
-        return true;
-}
-
 static ieee80211_rx_result debug_noinline
 ieee80211_rx_h_decrypt(struct ieee80211_rx_data *rx)
 {
@@ -1897,12 +1863,6 @@
 		return RX_DROP_MONITOR;
 	}
 
-	if (unlikely(ieee80211_is_data(hdr->frame_control) &&
-                     status->flag & RX_FLAG_DECRYPTED &&
-                     !(status->flag & RX_FLAG_MMIC_ERROR) &&
-                     ieee80211_rx_filter_packet(rx)))
-                return RX_DROP_UNUSABLE;
-
 	switch (rx->key->conf.cipher) {
 	case WLAN_CIPHER_SUITE_WEP40:
 	case WLAN_CIPHER_SUITE_WEP104:
diff --git a/net/mac80211/wpa.c b/net/mac80211/wpa.c
index ce79a23..182e8ac 100644
--- a/net/mac80211/wpa.c
+++ b/net/mac80211/wpa.c
@@ -1261,30 +1261,3 @@
 
 	return RX_DROP_UNUSABLE;
 }
-
-int ieee80211_crypto_hdrlen(u32 cipher)
-{
-        switch (cipher) {
-        case WLAN_CIPHER_SUITE_WEP40:
-        case WLAN_CIPHER_SUITE_WEP104:
-                return IEEE80211_WEP_IV_LEN;
-        case WLAN_CIPHER_SUITE_TKIP:
-                return IEEE80211_TKIP_IV_LEN;
-        case WLAN_CIPHER_SUITE_CCMP:
-                return IEEE80211_CCMP_HDR_LEN;
-        case WLAN_CIPHER_SUITE_CCMP_256:
-                return IEEE80211_CCMP_256_HDR_LEN;
-        case WLAN_CIPHER_SUITE_GCMP:
-        case WLAN_CIPHER_SUITE_GCMP_256:
-                return IEEE80211_GCMP_HDR_LEN;
-        case WLAN_CIPHER_SUITE_AES_CMAC:
-        case WLAN_CIPHER_SUITE_BIP_CMAC_256:
-        case WLAN_CIPHER_SUITE_BIP_GMAC_128:
-        case WLAN_CIPHER_SUITE_BIP_GMAC_256:
-                return 0;
-        default:
-                WARN_ONCE(1, "unsupported crypto cipher %x\n", cipher);
-        }
-
-        return 0;
-}
diff --git a/net/mac80211/wpa.h b/net/mac80211/wpa.h
index f2cc34d..d98011e 100644
--- a/net/mac80211/wpa.h
+++ b/net/mac80211/wpa.h
@@ -51,6 +51,5 @@
 ieee80211_crypto_gcmp_encrypt(struct ieee80211_tx_data *tx);
 ieee80211_rx_result
 ieee80211_crypto_gcmp_decrypt(struct ieee80211_rx_data *rx);
-int ieee80211_crypto_hdrlen(u32 cipher);
 
 #endif /* WPA_H */