Porting hostapd to a completely new (closed source :-( ) driver
Thu Feb 3 08:34:45 PST 2005
> The new driver does not have any IOCTL support for the hostapd
> interface yet, so... I see that the driver_madwifi.c includes the
> net80211 header files ieee80211.h, ieee80211_ioctl.h and
> ieee80211_crypto.h. Are the IOCTLs defined in these headers standard,
> or are they Atheros specific?
Linux has standard IOCTRLs which work on each card. But there are some
private IOCTRLs which are driver dependend. Some of these IOCTRLs are
used in hostapd to communicate with madwifi driver. To use these
private IOCTRLs hosapd has to include header files of madwifi.
Another way to communicate with kernel space are netlink messages. For
wireless there are special netlink messages defined in
wireless-extensions. Especialy to inform hostapd that a station appears
and disappears netlinkmessages are used.
> What I'm getting at is, would it be best if the kernel driver for this
> proprietary radio card was adapted to provide the same IOCTLs and
> Netlink socket as outlined in the net80211 header files from the
> madwifi sources? Or would it be better to implement a completely new
> driver_xxx.c abstraction layer for the hostapd to interface with
> propriotry IOCTLs which already exist in our proprietary wifi driver?
Well, its on you how you will implement it. For the way from driver to
hostapd (station or leave, replay detection, etc) netlinkmessages are
best choise. To set things in driver from hostapd (setting keys,
(de)authorize stations, etc) IOCTRLs are ok.
> I'll admit I'm a bit confused.
I hope i could help.
More information about the Hostap