From 01a0d01102d3aa0eed3600ea5e711cff823ddf80 Mon Sep 17 00:00:00 2001 From: mtaylor Date: Sun, 28 Oct 2007 20:40:04 +0000 Subject: [PATCH] Fix for a false replay detection when seq was initialized to zero and first packet is also seq zero. git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@2794 0192ed92-7a03-0410-a25b-9323aeb14dbd --- net80211/ieee80211_crypto_ccmp.c | 2 +- net80211/ieee80211_crypto_tkip.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/net80211/ieee80211_crypto_ccmp.c b/net80211/ieee80211_crypto_ccmp.c index 34bfe24..361a99a 100644 --- a/net80211/ieee80211_crypto_ccmp.c +++ b/net80211/ieee80211_crypto_ccmp.c @@ -267,7 +267,7 @@ ccmp_decap(struct ieee80211_key *k, struct sk_buff *skb, int hdrlen) tid = ((struct ieee80211_qosframe *)wh)->i_qos[0] & IEEE80211_QOS_TID; /* NB: assume IEEE80211_WEP_MINLEN covers the extended IV */ pn = READ_6(ivp[0], ivp[1], ivp[4], ivp[5], ivp[6], ivp[7]); - if (pn <= k->wk_keyrsc[tid]) { + if (pn && pn <= k->wk_keyrsc[tid]) { /* * Replay violation. */ diff --git a/net80211/ieee80211_crypto_tkip.c b/net80211/ieee80211_crypto_tkip.c index d4318bb..2aedcb3 100644 --- a/net80211/ieee80211_crypto_tkip.c +++ b/net80211/ieee80211_crypto_tkip.c @@ -297,7 +297,7 @@ tkip_decap(struct ieee80211_key *k, struct sk_buff *skb, int hdrlen) tid = ((struct ieee80211_qosframe *)wh)->i_qos[0] & IEEE80211_QOS_TID; ctx->rx_rsc = READ_6(ivp[2], ivp[0], ivp[4], ivp[5], ivp[6], ivp[7]); - if (ctx->rx_rsc <= k->wk_keyrsc[tid]) { + if (ctx->rx_rsc && ctx->rx_rsc <= k->wk_keyrsc[tid]) { /* * Replay violation; notify upper layer. */ -- 2.35.1