On Wed, May 04, 2005 at 06:40:08PM +0200, Francesco Potorti` wrote:
> I have recently tried to get corrupted frames, in order to examine how
> they are corrupted. In order to do that, I hacked the orinoco.13e
> driver with the monitor patch. I identified four candidate tests to
> change for getting bad frames, and I am experimenting with disabling
> them. I'd like to ask for some help understanding their exact meaning:
Unfortunately, I can't be sure of the exact meaning, because these are
indications from the firmware, for which I don't have documentation.
Note that the driver itself never sees the PLCP header - all its
processing is handled in firmware. We only see the MAC header.
> 1) (status & HERMES_RXSTAT_UNDECRYPTABLE)
> What does exactly mean? I am speculating that this is where the PLCP
> header CRC is checked. Is this correct?
I don't think so. I believe this flag is set when the firmware
encounters a WEP encoded frame, but doesn't have a suitable key to
decrypt the frame.
I doubt frames with a bad PLCP header are supplied to the driver at
all.
> 2) (status & HERMES_RXSTAT_BADCRC)
> This follows immediately (in fact is an `else' clause) and I suppose
> it is where the MPDU CRC is checked. Is this correct?
I suppose so - I imagine this flag is set when the firmware detects a
bad MPDU checksum.
> 3) (length > IEEE802_11_DATA_LEN)
> This is a sanity check. I suppose the length is taken from the PLCP
> header, right?
The length is given to us by the firmware. I imagine it, in turn,
calculates it from the PLCP header.
> 4) ( HERMES_RXSTATUS_MACPORT_GET(status) )
> If the CRC is bad, this one may be broken, right? That is, if the
> CRC is bad, one could get any number here. Can this be broken if the
> PLCP header CRC is good?
I don't think so. This information comes from the Rx descriptor.
This is a small chunk of information fed to us by the firmware giving
receive side status and low-level information - this doesn't go over
the air.
> Thanks for reading, and thanks to those that will care to answer.
>
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/people/dgibson
-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click
|