madwifi: fix an unhandle cryptoapi change (wpa2)
[oweals/openwrt.git] / package / madwifi / patches / 123-ccmp_checks.patch
1 diff -ur madwifi.old/net80211/ieee80211_crypto_ccmp.c madwifi.dev/net80211/ieee80211_crypto_ccmp.c
2 --- madwifi.old/net80211/ieee80211_crypto_ccmp.c        2007-06-02 04:37:47.425966000 +0200
3 +++ madwifi.dev/net80211/ieee80211_crypto_ccmp.c        2007-06-02 18:38:27.675882768 +0200
4 @@ -465,6 +465,9 @@
5         uint8_t *mic, *pos;
6         u_int space;
7  
8 +       if (ctx->cc_tfm == NULL)
9 +               return 0;
10 +
11         ctx->cc_vap->iv_stats.is_crypto_ccmp++;
12  
13         skb = skb0;
14 @@ -579,6 +582,9 @@
15         uint8_t *pos, *mic;
16         u_int space;
17  
18 +       if (ctx->cc_tfm == NULL)
19 +               return 0;
20 +
21         ctx->cc_vap->iv_stats.is_crypto_ccmp++;
22  
23         skb = skb0;
24 diff -ur madwifi.old/net80211/ieee80211_crypto_ccmp.c madwifi.dev/net80211/ieee80211_crypto_ccmp.c
25 --- madwifi.old/net80211/ieee80211_crypto_ccmp.c        2007-06-02 19:40:56.291006648 +0200
26 +++ madwifi.dev/net80211/ieee80211_crypto_ccmp.c        2007-06-03 04:19:47.561334192 +0200
27 @@ -118,6 +118,12 @@
28         ctx->cc_ic = vap->iv_ic;
29         ctx->cc_tfm = crypto_alloc_cipher("aes", 0,
30                                         CRYPTO_ALG_ASYNC);
31 +       
32 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
33 +       if (IS_ERR(ctx->cc_tfm))
34 +               ctx->cc_tfm = NULL;
35 +#endif
36 +
37         if (ctx->cc_tfm == NULL) {
38                 IEEE80211_DPRINTF(vap, IEEE80211_MSG_CRYPTO,
39                                 "%s: unable to load kernel AES crypto support\n",