From: Kristian Hoffmann (khoff_at_pc-intouch.com)
Date: 2002-03-03 09:10:33 UTC
We (a collegue and myself) modified the linux-wlan-ng driver to support 802.11b compliant WDS. It doesn't work. The firmware/card silently drops the transmit frames without generating a TxExc. Intersil's response for us was something like, "Yes it's broken and it might get fixed, kinda, maybe, probably not." In frustration, we wrote a non-standard WDS implementation using a "magic" mac address in the A3 header field of 00:00:de:ad:be:ef. At least I'm pretty sure it was the A3 field. Anyway, the driver would check for that mac address and if found, ignore the dest mac address in the 802.11 header and reconstruct the 802.3 frame from the payload only. The easiest way to do that was just force the "encapsulation" encoding method on all WDS stations' transmitted frames.
Realizing that was a horrible kluge, we decided on a lesser kluge. We setup a proc configurable list of mac addresses to check for instead of the magic 00:00:de:ad:be:ef. So in that case, you just add the mac address for any "WDS" stations. Then when the AP receives a frame from a station in the list, it assumes it's an encapsulated frame and ignores the dest address on the 802.11 frame and netif_rx's the encapsulated frame instead of attempting to reconstruct the header.
The scariest part was that both ways worked. Only we ran into interesting problems with broadcast frames but that would take a lot of explaining. If anyone isn't scared out of their mind and wants to look at the code, I'll post a link. We stopped without working out all the bugs and cleaning up the interface because I LEARNED HOW TO ROUTE and stop bridging like a wuss. Sorry, I had to. We realized we were going through all this trouble to avoid routing. It's not worth it so get over it. :P
PC-InTOUCH/FireToWire System Administrator khoff_at_pc-intouch.com
--- On Fri, 1 Mar 2002, Jerritt Collord wrote:
> Well it's been a while since anyone mentioned this, so I'll
> venture out cautiously... what's up with WDS implementations for
> OpenAP came out and there looked to be interest and work towards
> implementing their system, but concerns arose that it broke
> 802.11 spec.
> Jim Thompson questioned the Prism2 firmware support for WDS...
> zero threadage on that.
> Jerritt Collord