 #ifdef CONFIG_IEEE80211_CRYPT_TKIP if (ieee->tkip_countermeasures && strcmp(crypt->ops->name, "TKIP") == 0) { if (net_ratelimit()) { printk(KERN_DEBUG "%s: TKIP countermeasures: dropped " "received packet from " MAC_FMT "\n", ieee->dev->name, MAC_ARG(hdr->addr2)); } return -1; } #endif 
ieee80211_rx_frame_decrypt(struct ieee80211_device *ieee, struct sk_buff *skb,			   struct ieee80211_crypt_data *crypt){	struct ieee80211_hdr *hdr;	int res, hdrlen;	if (crypt == NULL || crypt->ops->decrypt_mpdu == NULL)		return 0;	hdr = (struct ieee80211_hdr *)skb->data;	hdrlen = ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_ctl));#ifdef CONFIG_IEEE80211_CRYPT_TKIP	if (ieee->tkip_countermeasures && strcmp(crypt->ops->name, "TKIP") == 0) {		if (net_ratelimit()) {			printk(KERN_DEBUG "%s: TKIP countermeasures: dropped "			       "received packet from " MAC_FMT "\n",			       ieee->dev->name, MAC_ARG(hdr->addr2));		}		return -1;	}#endif	atomic_inc(&crypt->refcnt);	res = crypt->ops->decrypt_mpdu(skb, hdrlen, crypt->priv);	atomic_dec(&crypt->refcnt);	if (res < 0) {		IEEE80211_DEBUG_DROP("decryption failed (SA=" MAC_FMT				     ") res=%d\n", MAC_ARG(hdr->addr2), res);		if (res == -2)			IEEE80211_DEBUG_DROP("Decryption failed ICV "					     "mismatch (key %d)\n",					     skb->data[hdrlen + 3] >> 6);		ieee->ieee_stats.rx_discards_undecryptable++;		return -1;	}	return res;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/20d64713ae71c0b0aa06084acbef2244021baaca/ieee80211_rx.c/clean/net/ieee80211/ieee80211_rx.c