HostApMode is a special mode present only in Intersil's Prism2Card which enables a WiFi interface to act as a true AccessPoint (eg. BssMode or InfrastructureMode) without requiring special firmware.

JouniMalinen wrote Linux drivers which utilize this feature which people are using to build LinuxAccessPoints.

The homepage for this software is:

The announcement of his work this work was made (I think) first here:

There is a new mailing list available for discussion on the HostApMode drivers. You can subscribe by sending mail and archives of the list are also available.


Well some time has gone on and this driver does some pretty neat things.

WDS aka WirelessDistributionSystem... allows access points to talk to other access points. The Prism chipsets are actually broken in this regard as they cannot send 4-address frames in HostAP mode. So, following on the original extensions done to the driver by the Instant802 OpenAP project, Jouni implemented a workaround by which 3-address frames are sent with a 4th address in an footer portion.

This quirk seems to resolved with the Prism firmware 1.5.0 (which apparently is not generally available, although the current seems to be 1.5.6), and Host AP version 2002-11-xx (not released yet), will support "standard" WDS frames. Standard is in quotes since 802.11 is actually not describing any particular WDS system, so the frame format still needs to be matched between actual APs.

So essentially now HostAP access points can talk to each other. The interface works such that when WDS is enabled and another HostAP AP is in range, an interface of form wlanNwdsM appears for use. This is an altogether logically different ethernet that only these two APs share. These interfaces can be added to a Linux bridge group and STP run such that a mesh of HostAP APs can have and offer to their client STAs seamless layer 2 connectivity. Or, these interfaces can be routed between in a somewhat more efficient though harder to configure scheme. It is not abundantly clear what the best automated routing protocol for this arrangement would be.

Remember that fundamentally the card is only on one RF channel at a time so in a group of HostAP APs all links are dependent on the openness of a single radio channel. Of note is that within a WDS mesh there is no resolution of any HiddenNode issues... it's the same topology as pure ad-hoc between the HostAP APs. One tip is to decrease the beacon intervals of the HostAP APs such that less radio time is monopolized such. Changing to 1s intervals from 1/100s allowed approximately 15% faster transfer rates between a two-node WDS test system.

Also added this spring was a MAC access control list and functions to dynamically kick MACs from association.

Other news is that the (UMD) implementation of the IEEE 802.1x authenticator works with the HostAP driver exclusively. This is a system whereby crypto certs are somehow used as authentication tokens over the ethernet via EAP, typically with a backend to a Radius server from the AP. Certain Intel and Cisco, etc. AccessPoints support this functionality out of the box. Available also is a supplicant for unix clients to authenticate to an 802.1x ethernet. (Note: I have never gotten 802.1x to work but that I'm sure is my fault ;-))

HostAP now supports WEP. In older versions of the Prism firmware (before 1.4.9), decryption must be done on the host processor in HostApMode, which creates a small engineering issue when determining host system requirements. HostAP version since 2002-10-20 can use the card (again, with firmware 1.4.9 or newer) to perform the WEP operations, relieving the host computer, but it could take a large hit in usable bandwidth to do this (it may limit bandwidth to about 200/250kbyte/s).

Optional in the HostAP configuration recently is the hostapd implementation of a userspace authenticator. This will allow direct hooks to the plethora of authentication systems available on the unix platform

HostAP drivers support PCI, PLX and PCMCIA versions of the Prism hardware. The make process for the drivers has changed this spring such that one no long must copy a tarball into the pcmcia-cs build tree to be made there. Define your KERNEL_PATH line in the Makefile, and IFF you wish to compile against an external (non-kernel-tree) pcmcia-cs the PCMCIA_PATH. Your choice of three make targets: "make pccard", "make pci", "make plx". Then "make install" if you are so inclined though this is rumored to not work right away on $$$RedHat$$$$ systems--I recommend just copying the driver/module/hostap_cs.o to the e.g. /lib/modules/2.4.18/pcmcia directory or the driver/module/hostap_pci.o to /lib/modules/2.4.18/kernel/drivers/net directory.

note- I've built RedHat rpm's with HostAP --AaronBaer

HostAPMode functionality is standard in recent BSD kernel drivers for the Prism cards.

Prism chipsets have an RFMonitor mode of operation which some drivers including the HostAP can take advantage of to listen to the raw 802.11b frames on the air. Something I didn't know until a little bit ago is that the Prism actually won't let you see certain malformed frames that a Cisco actually will. Just a sidenote.

-- JerrittCollord