summaryrefslogtreecommitdiffstats
path: root/package/madwifi/patches/123-ccmp_checks.patch
blob: 8370d357969449710452b9caad694da69693cf20 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Index: madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_ccmp.c
===================================================================
--- madwifi-ng-r2420-20070602.orig/net80211/ieee80211_crypto_ccmp.c	2007-06-04 13:21:53.234883736 +0200
+++ madwifi-ng-r2420-20070602/net80211/ieee80211_crypto_ccmp.c	2007-06-04 13:21:57.936169032 +0200
@@ -118,6 +118,12 @@
 	ctx->cc_ic = vap->iv_ic;
 	ctx->cc_tfm = crypto_alloc_cipher("aes", 0,
 					CRYPTO_ALG_ASYNC);
+	
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
+	if (IS_ERR(ctx->cc_tfm))
+		ctx->cc_tfm = NULL;
+#endif
+
 	if (ctx->cc_tfm == NULL) {
 		IEEE80211_DPRINTF(vap, IEEE80211_MSG_CRYPTO,
 				"%s: unable to load kernel AES crypto support\n",
@@ -465,6 +471,9 @@
 	uint8_t *mic, *pos;
 	u_int space;
 
+	if (ctx->cc_tfm == NULL)
+		return 0;
+
 	ctx->cc_vap->iv_stats.is_crypto_ccmp++;
 
 	skb = skb0;
@@ -579,6 +588,9 @@
 	uint8_t *pos, *mic;
 	u_int space;
 
+	if (ctx->cc_tfm == NULL)
+		return 0;
+
 	ctx->cc_vap->iv_stats.is_crypto_ccmp++;
 
 	skb = skb0;