Re: What _is_ hostapd for?

From: Jouni Malinen (
Date: 2002-09-19 03:24:58 UTC

On Wed, Sep 18, 2002 at 07:01:16PM -0700, Joseph Chiu wrote:

> Maybe I'm missing the obvious, but I've been running the (now about a month
> old) prism hostap drivers in the master mode; and I can't understand from a
> quick glance why there's a need for a separate hostapd program.
> Is this a case of mostly implementing AP functionality on
> non-prism-AP-enhanced cards? Or are is the main idea to support extra AP
> features (I see references to 802.1x and RADIUS) that just won't go in the
> driver?

hostapd is for moving IEEE 802.11 management functionality (mainly authentication and association) to a more proper place, i.e., from kernel space into user space. It helps in making the kernel driver more simpler (it is already complex enough.. ;-). In addition, it is quite a bit easier to do changes in user space daemon than in kernel driver. One can use a normal debugger and a bug in management functionality does not crash the whole kernel. Communicating with external entities (like a RADIUS server) is easier, and so on.

One goal for hostapd is to make it as hardware independent as possible so it could be used with other than Prism2 cards. And yes, new features related to AP management will probably not get into the kernel driver anymore. 802.1x stuff is a good example of this; I will not be implementing it also to the kernel driver. I'm also hoping to change the default configuration of the Host AP driver package to use hostapd. Kernel side code for auth/assoc might still remain as an option, but I'm considering of moving it to a separate file to clean up the code path needed with hostapd.

Jouni Malinen                                            PGP id EFC895FA

This archive was generated by hypermail 2.1.4.