Subject: Re: Patch to get aironet (an0) cards working
To: None <tech-net@netbsd.org>
From: Jim Miller <tech-net@jcmco.com>
List: tech-net
Date: 11/02/2004 17:57:58
> From: "Dheeraj Reddy" <dheeraj@ece.gatech.edu>
> Date: Tue, 2 Nov 2004 16:55:49 -0500
> Subject: Re: Patch to get aironet (an0) cards working

> I have tested them with a hostap based access point (with WEP), I
> can check it with a cisco access point this evening at school and
> report back.

Here are some details on my attempts to get Aironet 350 client cards
(v5.41) to work with NetBSD 2.0RC4.

Using either Dheeraj's driver mods or ones of my own, the 350 card
works fine with every non-Cisco access point I've tried, either with
or without WEP.

The issue I'm having is when the 350 client card associates with a
Cisco AIR-AP350 access point.  Frames transmitted by the NetBSD box
are received at the AP, decrypted, and forwarded to wired systems
correctly.

The problem is that frames *received* by the 350 card are not
recognized properly by NetBSD.  

Here's a tcpdump taken on the NetBSD box with the aironet card that
exemplifies the problem:

This is a ping using 0xdeadbeef as the pad data; 192.1.2.191 is the
aironet box and 192.1.2.3 is something on the wired network beyond the
access point.

The echo request goes out properly:

02:27:37.742113 192.1.2.191 > 192.1.2.3: icmp: echo request seq 0 (ttl 255, id 1446, len 84)
0x0000   4500 0054 05a6 0000 ff01 313e c001 02bf        E..T......1>....
0x0010   c001 0203 0800 6b2b 025b 0000 4184 93e9        ......k+.[..A...
0x0020   000b 519d dead beef dead beef dead beef        ..Q.............
0x0030   dead beef dead beef dead beef dead beef        ................
0x0040   dead beef dead beef dead beef dead beef        ................
0x0050   dead beef                                      ....

The echo reply comes back from the remote system, but is not recognized
as being an IP datagram.

02:27:37.744667 0:a:95:81:96:64 null > 0:f:24:2:b2:d1 sap 45 I (s=0,r=42,C) len=80
0x0000   4500 0054 61a6 0000 4001 943e c001 0203        E..Ta...@..>....
0x0010   c001 02bf 0000 732b 025b 0000 4184 93e9        ......s+.[..A...
0x0020   000b 519d dead beef dead beef dead beef        ..Q.............
0x0030   dead beef dead beef dead beef dead beef        ................
0x0040   dead beef dead beef dead beef dead beef        ................
0x0050   dead beef                                      ....

0:0a:95:81:96:64 is the MAC address of the system that was pinged.
0:0f:24:02:b2:d1 is the MAC address of the Aironet client card.

Other notes:

I can successfully associate with and communicate through the Cisco AP
from other non-NetBSD systems, therefore I do not suspect the AP is
the problem, but I do think there is something Cisco-proprietary going
on between the AP and the 350 client card.

I have tried multiple 350 cards and several older versions of the v5
firmware. Results are the same.

I have tried this with WEP on and WEP off with no difference in results.

Jim