Table of Contents

DEPRECATED

IMPORTANT NOTE: This page is deprecated, updated documentation can be found here

ACX100/ACX111

Note: This page is about the older acx100/acx111 drivers. For the new mac80211-based driver, see acx1xx.

WARNING!!!

There is legal controversy surrounding the development of this driver, see the wireless mailing list for more information. See kernel inclusion section for some background information on the previous attempt to include it in the mainline kernel.

The mac80211 version is still in beta. It requires a kernel equal or greater than 2.6.18 (with mac80211 support). Starting with 2.6.27, it will be integrated in the kernel.

From kernel 2.6.23 forward, an injection patch is already integrated in the mac80211 stack in the kernel mainline. For fragmentation attack support, an additional patch is required. See the mac80211 page for more details.

All versions require a non-GPL firmware in /lib/firmware/, you can find it online.

and replace `uname -r` by the name of their current kernel, followed by generic.
The reason for this is that the actual modules directory for the current kernel (which is what the /lib/modules/`uname -r`/ commande will return) does not contain the build symbolic link, and therefore no makefile will be found for the make command.
Only the /lib/modules/2.6.20-16-generic/ contains a simlink called “build” that will ensure the proper makefile is found.

ie: as of 26th of June 2007, under Ubuntu 7.04 “Feisty Fawn”, the correct lines would be:

That's a problem with the driver. I saw it several times while writing the acx111 patch. It works like this:

Every packet you transmit allocates a tx buffer, so it will start filling up the whole buffer space until its freed again and that's the point. It just doesn't get freed in time.
Once you reached the limit and have eaten up all available buffers, it won't work again until you reload the driver. Its waiting for a TX_COMPLETE message…

Possible workarounds (don't know for sure right now, just try it):

This happens when you use the unpatched driver, double and trible check that you're infact using a patched driver: look at the buildtime, remove all acx modules, make sure your custom module is in the correct /lib/modules/`uname -r`/ path…

Use aireplay-ng 0.8 or higher, as they incorporate indirect support for acx injection (sending more ack frames)