linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* 2.6.29-rc "TKIP: replay detected" regression
@ 2009-03-11 12:07 Hugh Dickins
  2009-03-11 15:11 ` John W. Linville
  0 siblings, 1 reply; 3+ messages in thread
From: Hugh Dickins @ 2009-03-11 12:07 UTC (permalink / raw)
  To: John W. Linville
  Cc: Larry Finger, Rafael J. Wysocki, linux-kernel, linux-wireless

Prior to 2.6.29-rc1's 274bfb8dc5ffa16cb073801bebe76ab7f4e2e73d
"lib80211: absorb crypto bits from net/ieee80211", the TKIP and CCMP
"replay detected" messages were subject to the IEEE80211_DEBUG_DROP()
macro, neither I nor my distro had CONFIG_IEEE80211_DEBUG set, I never
glimpsed such messages, and ThinkPad T43p ipw2200 wireless worked fine.

-		if (ieee80211_ratelimit_debug(IEEE80211_DL_DROP)) {
-			IEEE80211_DEBUG_DROP("TKIP: replay detected: STA=%pM"
+		if (net_ratelimit()) {
+			printk(KERN_DEBUG "TKIP: replay detected: STA=%pM"

Wireless is still working fine - thank you - but now that such messages
are not CONFIG'ed out, my /var/log/messages is getting cluttered with
"TKIP: replay detected"s, and more unpleasantly (because I have WARNINGs
to screen) occasional "__ratelimit: NN callbacks suppressed" appearing.

Messages from the last day appended below: only one CCMP, but two
kinds of TKIP message - sometimes it's just the same TSC repeated,
but more irritating are the sequences when it gets a reset to zero
"previous TSC 000000000dbb received TSC 000000000000" followed by
message (or suppression) as it goes on to receive 1, 2, 3, ...
The AP here, if it's of any interest, is a Siemens Gigaset SE587.

I've not correlated these bursts with any bad behaviour at all,
reception seems fine even amidst these sequences: so I'd be glad
just to have those messages suppressed again - and of course can
patch them out of my own kernel builds, but others may suffer too.

Hugh

Mar 10 12:47:27 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000380 received TSC 000000000380
Mar 10 17:44:42 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 0000000009fd received TSC 0000000009fd
Mar 10 17:50:51 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000a5b received TSC 000000000a5b
Mar 10 18:07:27 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000aec received TSC 000000000aec
Mar 10 18:17:24 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000b36 received TSC 000000000b36
Mar 10 20:18:54 blonde kernel: CCMP: replay detected: STA=00:21:04:13:08:d3 previous PN 000000000527 received PN 000000000526
Mar 10 20:22:10 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000e8e received TSC 000000000e8e
Mar 10 23:27:26 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 00000000015f received TSC 00000000015f
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000000
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000001
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000002
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000003
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000004
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000005
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000006
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000007
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000008
Mar 11 10:17:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000009
Mar 11 10:27:23 blonde kernel: __ratelimit: 30 callbacks suppressed
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000002d
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000002e
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000002f
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000031
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000032
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000033
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000034
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000035
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000036
Mar 11 10:27:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000037
Mar 11 10:29:23 blonde kernel: __ratelimit: 32 callbacks suppressed
Mar 11 10:29:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000005a
Mar 11 10:37:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000005b
Mar 11 10:37:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000005c
Mar 11 10:37:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000005d
Mar 11 10:37:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000005e
Mar 11 10:37:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000005f
Mar 11 10:37:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000060
Mar 11 10:37:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000061
Mar 11 10:37:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000062
Mar 11 10:37:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000063
Mar 11 10:47:23 blonde kernel: __ratelimit: 33 callbacks suppressed
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000088
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000089
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000008a
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000008c
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000008d
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000008e
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 00000000008f
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000090
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000091
Mar 11 10:47:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 000000000092
Mar 11 10:57:23 blonde kernel: __ratelimit: 30 callbacks suppressed
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000b5
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000b6
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000b7
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000b8
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000b9
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000ba
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000bb
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000bc
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000bd
Mar 11 10:57:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000c1
Mar 11 11:07:23 blonde kernel: __ratelimit: 30 callbacks suppressed
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000e2
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000e3
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000e4
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000e5
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000e6
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000e7
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000e8
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000e9
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000ea
Mar 11 11:07:23 blonde kernel: TKIP: replay detected: STA=00:21:04:13:08:d3 previous TSC 000000000dbb received TSC 0000000000eb

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: 2.6.29-rc "TKIP: replay detected" regression
  2009-03-11 12:07 2.6.29-rc "TKIP: replay detected" regression Hugh Dickins
@ 2009-03-11 15:11 ` John W. Linville
  2009-03-11 15:12   ` [PATCH] lib80211: silence excessive crypto debugging messages John W. Linville
  0 siblings, 1 reply; 3+ messages in thread
From: John W. Linville @ 2009-03-11 15:11 UTC (permalink / raw)
  To: Hugh Dickins
  Cc: Larry Finger, Rafael J. Wysocki, linux-kernel, linux-wireless

On Wed, Mar 11, 2009 at 12:07:54PM +0000, Hugh Dickins wrote:
> Prior to 2.6.29-rc1's 274bfb8dc5ffa16cb073801bebe76ab7f4e2e73d
> "lib80211: absorb crypto bits from net/ieee80211", the TKIP and CCMP
> "replay detected" messages were subject to the IEEE80211_DEBUG_DROP()
> macro, neither I nor my distro had CONFIG_IEEE80211_DEBUG set, I never
> glimpsed such messages, and ThinkPad T43p ipw2200 wireless worked fine.
> 
> -		if (ieee80211_ratelimit_debug(IEEE80211_DL_DROP)) {
> -			IEEE80211_DEBUG_DROP("TKIP: replay detected: STA=%pM"
> +		if (net_ratelimit()) {
> +			printk(KERN_DEBUG "TKIP: replay detected: STA=%pM"

Hugh, this is my mess -- sorry!  I'll follow-up with a patch.

John
-- 
John W. Linville		Someday the world will need a hero, and you
linville@tuxdriver.com			might be all we have.  Be ready.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH] lib80211: silence excessive crypto debugging messages
  2009-03-11 15:11 ` John W. Linville
@ 2009-03-11 15:12   ` John W. Linville
  0 siblings, 0 replies; 3+ messages in thread
From: John W. Linville @ 2009-03-11 15:12 UTC (permalink / raw)
  To: linux-wireless; +Cc: John W. Linville

When they were part of the now defunct ieee80211 component, these
messages were only visible when special debugging settings were enabled.
Let's mirror that with a new lib80211 debugging Kconfig option.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
---
 net/wireless/Kconfig               |   10 ++++++++++
 net/wireless/lib80211_crypt_ccmp.c |    2 ++
 net/wireless/lib80211_crypt_tkip.c |    4 ++++
 3 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/net/wireless/Kconfig b/net/wireless/Kconfig
index e28e2b8..092ae6f 100644
--- a/net/wireless/Kconfig
+++ b/net/wireless/Kconfig
@@ -102,3 +102,13 @@ config LIB80211_CRYPT_CCMP
 
 config LIB80211_CRYPT_TKIP
 	tristate
+
+config LIB80211_DEBUG
+	bool "lib80211 debugging messages"
+	depends on LIB80211
+	default n
+	---help---
+	  You can enable this if you want verbose debugging messages
+	  from lib80211.
+
+	  If unsure, say N.
diff --git a/net/wireless/lib80211_crypt_ccmp.c b/net/wireless/lib80211_crypt_ccmp.c
index db42819..2301dc1 100644
--- a/net/wireless/lib80211_crypt_ccmp.c
+++ b/net/wireless/lib80211_crypt_ccmp.c
@@ -337,6 +337,7 @@ static int lib80211_ccmp_decrypt(struct sk_buff *skb, int hdr_len, void *priv)
 	pos += 8;
 
 	if (ccmp_replay_check(pn, key->rx_pn)) {
+#ifdef CONFIG_LIB80211_DEBUG
 		if (net_ratelimit()) {
 			printk(KERN_DEBUG "CCMP: replay detected: STA=%pM "
 				 "previous PN %02x%02x%02x%02x%02x%02x "
@@ -346,6 +347,7 @@ static int lib80211_ccmp_decrypt(struct sk_buff *skb, int hdr_len, void *priv)
 				 key->rx_pn[3], key->rx_pn[4], key->rx_pn[5],
 				 pn[0], pn[1], pn[2], pn[3], pn[4], pn[5]);
 		}
+#endif
 		key->dot11RSNAStatsCCMPReplays++;
 		return -4;
 	}
diff --git a/net/wireless/lib80211_crypt_tkip.c b/net/wireless/lib80211_crypt_tkip.c
index 7e8e22b..c362873 100644
--- a/net/wireless/lib80211_crypt_tkip.c
+++ b/net/wireless/lib80211_crypt_tkip.c
@@ -465,12 +465,14 @@ static int lib80211_tkip_decrypt(struct sk_buff *skb, int hdr_len, void *priv)
 	pos += 8;
 
 	if (tkip_replay_check(iv32, iv16, tkey->rx_iv32, tkey->rx_iv16)) {
+#ifdef CONFIG_LIB80211_DEBUG
 		if (net_ratelimit()) {
 			printk(KERN_DEBUG "TKIP: replay detected: STA=%pM"
 			       " previous TSC %08x%04x received TSC "
 			       "%08x%04x\n", hdr->addr2,
 			       tkey->rx_iv32, tkey->rx_iv16, iv32, iv16);
 		}
+#endif
 		tkey->dot11RSNAStatsTKIPReplays++;
 		return -4;
 	}
@@ -505,10 +507,12 @@ static int lib80211_tkip_decrypt(struct sk_buff *skb, int hdr_len, void *priv)
 			 * it needs to be recalculated for the next packet. */
 			tkey->rx_phase1_done = 0;
 		}
+#ifdef CONFIG_LIB80211_DEBUG
 		if (net_ratelimit()) {
 			printk(KERN_DEBUG "TKIP: ICV error detected: STA="
 			       "%pM\n", hdr->addr2);
 		}
+#endif
 		tkey->dot11RSNAStatsTKIPICVErrors++;
 		return -5;
 	}
-- 
1.6.0.6


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-03-11 15:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-11 12:07 2.6.29-rc "TKIP: replay detected" regression Hugh Dickins
2009-03-11 15:11 ` John W. Linville
2009-03-11 15:12   ` [PATCH] lib80211: silence excessive crypto debugging messages John W. Linville

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).