On Mon, Dec 27, 2004 at 02:22:47PM -0500, Thin Worm wrote:
> I don't know how to find the seq_ctl information in the sending-out packet.
> I think it should be found in the function orinoco_xmit(), but the
> comment in this function make me confused,
>
> /* Clear the 802.11 header and data length fields -some
> * firewares (e.g. Lucent/Agere 8.xx) appear to get confused
> * if this isn't done. */
> hermes_clear_words(hw, HERMES_DATA0,
> HERMES_802_3_OFFSET - HERMES_802_11_OFFSET);
> if all the 802.11 information is cleared, where can I find it? is it
> useless for orinoco driver?
>
> the 802.11 header defined ad below:
> struct ieee802_11_hdr {
> u16 frame_ctl;
> u16 duration_id;
> u8 addr1[ETH_ALEN];
> u8 addr2[ETH_ALEN];
> u8 addr3[ETH_ALEN];
> u16 seq_ctl;
> u8 addr4[ETH_ALEN];
> } __attribute__ ((packed));
We don't fill in the 802.11 header ourselves when sending. Instead we
fill in an 802.3 header, and the firmware converts it to 802.11 (this
should probably be changed, but we no-one seems to have had time to do
it).
So the seq_ctl field will be filled in with whatever the firmware's
default is, I guess.
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist. NOT _the_ _other_ _way_
| _around_!
http://www.ozlabs.org/people/dgibson
-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
|
|