Search Linux Wireless

Re: [PATCH 7/7] cfg80211/mac80211: Add Country IE parsing/802.11d support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 5, 2008 at 11:52 AM, Johannes Berg
<johannes@xxxxxxxxxxxxxxxx> wrote:
> On Wed, 2008-11-05 at 11:24 -0800, Luis R. Rodriguez wrote:
>> On Wed, Nov 5, 2008 at 10:10 AM, Johannes Berg
>> <johannes@xxxxxxxxxxxxxxxx> wrote:

>> >> > When I suggested to use a checksum I was thinking of an easy way to
>> >> > debounce. But a checksum is never perfect. Hence, the WARN_ON you added
>> >> > might trigger despite the debounce checksum. Or we might fail to follow
>> >> > changes.
>> >>
>> >> Let me know what you think about the alpha2 + BSSID thing above. I
>> >> guess it should also consider the environment (I, O, ' ') in case the
>> >> AP is reconfigured to be outdoor (without being moved). I don't think
>> >> we should care about supporting these cases on the fly but we should
>> >> ensure the change won't break things.
>> >
>> > Well I haven't checked in detail which things you care about in the IE
>> > now, but shouldn't you check if those changed?
>>
>> We only care about the channel triplet and that has:
>>
>> a. Channel start
>> b. Number of channels
>> c. Power
>>
>> But I think that if the alpha2+environment is the same that's enough
>> for the STA to assume the BSSID has not changed the IE. At least with
>> openwrt I need to bring down the interface of the AP to change 11d.
>> I'd guess most home APs act the same way as in that they require a
>> reboot or something. On some APs I use I use iwpriv to change it but I
>> haven't checked to see internally what that will do while its on.
>>
>> The checksum really only should be useful if a secondary device tries
>> to associate to an AP and it gets a country IE. It needs a way to know
>> if the IE is different than the one an already-present device is
>> using. What I'm suggesting is that if these things are the same we can
>> assume it doesn't change: BSSID+alpha2+environment.
>
> Ok, checksums are nice to avoid having to memcmp large things, but
> afaict we're talking about maybe 12 bytes, right?

Depends on the number of triplets, but since we only support 32 reg
rules this means we only support 32 triplets and therefore we only
support a max IE of size of 99 bytes (32 * 3 + 3). Realistically in JP
I expect there to be around 3, 4, or 5 or maybe even 6 triplets which
is 21 bytes.

> If so, why don't we
> just keep a copy of the country IE and compare it fully every time?

Eh. I'm inclined to leave the checksum then. We'd then have to bother
with freeing yet another thing later.

> The way I see it, driver/mac80211 calls cfg80211's
>        regulatory_11d(wiphy, ie, ie_length)
> function and that sorts out whether to do anything at all, ignore it
> because it already knows etc. So regardless of what we do we can just do
> it all in here and not bother anything elsewhere with checksums,
> debouncing etc, and will be free to change it easily.

You have sold on this.

  Luis
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux