All of lore.kernel.org
 help / color / mirror / Atom feed
From: "John W. Linville" <linville@tuxdriver.com>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: linux-wireless <linux-wireless@vger.kernel.org>,
	Luis Carlos Cobo <luisca@cozybit.com>,
	Javier Cardona <javier@cozybit.com>, Jiri Benc <jbenc@suse.cz>,
	Michael Wu <flamingice@sourmilk.net>, Jouni Malinen <j@w1.fi>,
	Bill Moss <bmoss@CLEMSON.EDU>, Daniel Drake <dsd@gentoo.org>,
	Dan Williams <dcbw@redhat.com>, Vladimir Koutny <vlado@ksp.sk>,
	Tomas Winkler <tomasw@gmail.com>
Subject: Re: mac80211 MLME scanning - BSS list trouble
Date: Mon, 31 Mar 2008 16:05:36 -0400	[thread overview]
Message-ID: <20080331200536.GA13799@tuxdriver.com> (raw)
In-Reply-To: <1206865999.22530.187.camel@johannes.berg>

On Sun, Mar 30, 2008 at 10:33:19AM +0200, Johannes Berg wrote:

> The first one is that there is no actual expiration of BSS structs. Each
> BSS struct has a 'last_update' member that contains (in jiffies) the
> time this item was last updated. This means that we accumulate BSS
> information forever, but due to the 'last_update' only the last few
> items will be returned to the user on asking for a scan result. This
> obviously has problems since a rogue station could bombard us with fake
> probe responses and cause us to build a huge BSS list which is never
> again freed until the hardware is deregistered. This will need to be
> fixed, of course.

Assuming this was fixed, does the rest of this issue go away?
It seems like it would.

> In any case, the problem then is that last_update is updated only along
> with the remaining information in a BSS struct, which is quite correct.
> The question, however, is: why are beacons not allowed to override probe
> response information? That is, why does this piece of code exist:
> 
>         if (sdata->vif.type != IEEE80211_IF_TYPE_IBSS &&
>             bss->probe_resp && beacon) {
>                 /* STA mode:
>                  * Do not allow beacon to override data from Probe Response. */
>                 ieee80211_rx_bss_put(dev, bss);
>                 return;
>         }  

Should we consider allowing the beacon to update the info if
last_update is old enough to keep the BSS out of the scan results?

John
-- 
John W. Linville
linville@tuxdriver.com

  parent reply	other threads:[~2008-03-31 20:34 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-30  8:33 mac80211 MLME scanning - BSS list trouble Johannes Berg
2008-03-31 13:57 ` Jiri Benc
2008-03-31 14:10 ` Tomas Winkler
2008-03-31 18:40   ` Johannes Berg
2008-03-31 15:04 ` Jouni Malinen
2008-04-01 13:16   ` Johannes Berg
2008-04-03 16:43     ` Jouni Malinen
2008-04-04 14:55       ` Johannes Berg
2008-03-31 20:05 ` John W. Linville [this message]
2008-04-01 12:25   ` Johannes Berg
2008-04-03 15:57   ` Vladimir Koutny

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080331200536.GA13799@tuxdriver.com \
    --to=linville@tuxdriver.com \
    --cc=bmoss@CLEMSON.EDU \
    --cc=dcbw@redhat.com \
    --cc=dsd@gentoo.org \
    --cc=flamingice@sourmilk.net \
    --cc=j@w1.fi \
    --cc=javier@cozybit.com \
    --cc=jbenc@suse.cz \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=luisca@cozybit.com \
    --cc=tomasw@gmail.com \
    --cc=vlado@ksp.sk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.