netdev
[Top] [All Lists]

Re: [PATCH] ieee80211 subsystem

To: James Ketrenos <jketreno@xxxxxxxxxxxxxxx>
Subject: Re: [PATCH] ieee80211 subsystem
From: "Randy.Dunlap" <rddunlap@xxxxxxxx>
Date: Wed, 09 Feb 2005 20:36:49 -0800
Cc: netdev@xxxxxxxxxxx
In-reply-to: <42087751.3040806@xxxxxxxxxxxxxxx>
References: <4203C32A.70402@xxxxxxxxxxxxxxx> <420828A9.7060306@xxxxxxxx> <42087751.3040806@xxxxxxxxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla Thunderbird 0.9 (X11/20041103)
James Ketrenos wrote:
Randy.Dunlap wrote:

James Ketrenos wrote:

Attached is the patch against 2.6.11-rc3-mm1 that adds the ieee80211 subsystem used by the ipw2100 and ipw2200 projects.

I'll be sending out the patches for ipw2100-1.0.0 and ipw2200-1.0.0 that use thist stack to the list on Monday.

In terms of what the stack currently does:

* HW independent -- it only knows about 802.11 data and structures
* Performs an 802.3 <-> 802.11 transform for data Tx/Rx
* Host based support for fragmentation, WEP, and WPA using the kernel's crypto functions
* Beacon and probe response collection and parsing
* Default implementation of some of the WE handlers that can be managed without hardware knowledge

We are working to merge in Dave Miller's p80211 code into the ieee80211 subsystem so that it hooks into the kernel as a true network layer as opposed to a mutated offspring of ethernet. Once that is done, hopefully the skb to txb code can be reworked and 802.11 fragments can be treated either as normal skbs, or skbs can be modified to directly support them (ideally so that encrypted 802.11 frames in support of IP packets can be cached by the stack instead of having to be re-encrypted on TCP retries)

Support for HW/FW crypto and fragmentation offload, in a HW independent fashion, is also on the short-term list.

When you look through the patch you'll likely notice the #ifdef NOTYET/#endif sequences surrounding portions of code from the hostap project. Portions of this subsystem were based on an earlier version of the hostap project. Those areas that weren't directly supported by the ipw* projects weren't ported to be completely hardware independent (since I don't have the hardware to test it), and so are still wrapped in the ifdefs. These sections mainly cover support for MASTER and WDS modes.

Anyway, please let me know what you think. Hopefully I built the patch right...



James,
Can you post a patch that will build?  or did you just want
feedback on the current state of the patch?


Ah; I see my tree that I did the diff on was missing the wireless/Makefile and the ieee80211/ieee80211_module.c to create the patch against... sigh. Attached is ieee80211_module.c; you have the change for the Makefile to include ieee80211. Later {hopefully today} I'll send a full patch that includes several of the corrections you called out in your prior patch.

Now missing ieee80211_crypt.h (#included in the new
ieee80211.h).  Apparently still needing a complete diff.


+       /* Add the ESSID */
+        iwe.cmd = SIOCGIWESSID;
+        iwe.u.data.flags = 1;
+       if (network->flags & NETWORK_EMPTY_ESSID) {

Lines 2-3 above use spaces (e.g.) -- please use tabs.


--
~Randy

<Prev in Thread] Current Thread [Next in Thread>