[Fix bug# 771] Too many (8) bytes recieved when using AES/hwcrypto

Signed-off-by: James Ketrenos <[EMAIL PROTECTED]>
---
 drivers/net/wireless/ipw2200.c |   10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)
---
diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c
index 217b657..549f582 100644
--- a/drivers/net/wireless/ipw2200.c
+++ b/drivers/net/wireless/ipw2200.c
@@ -7877,10 +7877,7 @@ static void ipw_rebuild_decrypted_skb(st
                memmove(skb->data + IEEE80211_3ADDR_LEN,
                        skb->data + IEEE80211_3ADDR_LEN + 8,
                        skb->len - IEEE80211_3ADDR_LEN - 8);
-               if (fc & IEEE80211_FCTL_MOREFRAGS)
-                       skb_trim(skb, skb->len - 16);   /* 2*MIC */
-               else
-                       skb_trim(skb, skb->len - 8);    /* MIC */
+               skb_trim(skb, skb->len - 16);   /* CCMP_HDR_LEN + CCMP_MIC_LEN 
*/
                break;
        case SEC_LEVEL_2:
                break;
@@ -7889,10 +7886,7 @@ static void ipw_rebuild_decrypted_skb(st
                memmove(skb->data + IEEE80211_3ADDR_LEN,
                        skb->data + IEEE80211_3ADDR_LEN + 4,
                        skb->len - IEEE80211_3ADDR_LEN - 4);
-               if (fc & IEEE80211_FCTL_MOREFRAGS)
-                       skb_trim(skb, skb->len - 8);    /* 2*ICV */
-               else
-                       skb_trim(skb, skb->len - 4);    /* ICV */
+               skb_trim(skb, skb->len - 8);    /* IV + ICV */
                break;
        case SEC_LEVEL_0:
                break;

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to