Problem with crypto when initializing TKIP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I am trying to fix the driver r8192e_pci from the staging tree. It works fine with WEP and CCMP encryption, but it fails when trying to initialize TKIP. This driver does not use mac80211, but incorporates its own softmac routines.

This problem is a regression between 3.2.0 and 3.3.0, but I was unable to get a reasonable result using bisection.

Routine rtllib_tkip_init() from drivers/staging/rtl8192e/rtllib_crypt_tkip.c does the same set of steps as is done in mac80211. Everything works with mac80211.

The block cipher allocation calls to crypto_alloc_blkcipher("ecb(arc4)",...) are OK. The crypto_alloc_hash("michael_mic",...) call is the part that fails. The problem shows up in the code fragment below from crypto/api.c:

        ok = crypto_probing_notify(CRYPTO_MSG_ALG_REQUEST, larval);

        if (ok == NOTIFY_STOP)
                alg = crypto_larval_wait(larval);
        else {
                crypto_mod_put(larval);
                alg = ERR_PTR(-ENOENT);
        }

The value of ok is NOTIFY_OK, which leads to a return of -ENOENT and a failure of the initialization.

I know this code is pretty old, and perhaps nobody remembers it, but I would appreciate some pointers on debugging this issue.

Thanks,

Larry
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel


[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux