Linux wireless drivers development
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: Guy Eilam <guy@wizery.com>
Cc: linux-wireless@vger.kernel.org
Subject: Re: [PATCH v3 2/2] mac80211: fix race condition between assoc_done and first EAP packet
Date: Mon, 29 Aug 2011 15:32:06 +0200	[thread overview]
Message-ID: <1314624726.8959.8.camel@jlt3.sipsolutions.net> (raw)
In-Reply-To: <1313583495-9695-2-git-send-email-guy@wizery.com> (sfid-20110817_142226_610504_EC40B744)

On Wed, 2011-08-17 at 15:18 +0300, Guy Eilam wrote:

> --- a/net/mac80211/rx.c
> +++ b/net/mac80211/rx.c
> @@ -850,8 +850,21 @@ ieee80211_rx_h_check(struct ieee80211_rx_data *rx)
>  		      ieee80211_is_pspoll(hdr->frame_control)) &&
>  		     rx->sdata->vif.type != NL80211_IFTYPE_ADHOC &&
>  		     rx->sdata->vif.type != NL80211_IFTYPE_WDS &&
> -		     (!rx->sta || !test_sta_flags(rx->sta, WLAN_STA_ASSOC))))
> +		     (!rx->sta || !test_sta_flags(rx->sta, WLAN_STA_ASSOC)))) {
> +		if (rx->sta && rx->sta->dummy &&
> +		    ieee80211_is_data_present(hdr->frame_control)) {
> +			u16 ethertype;
> +			u8 *payload;
> +
> +			payload = rx->skb->data +
> +				ieee80211_hdrlen(hdr->frame_control);
> +			ethertype = (payload[6] << 8) | payload[7];
> +			if (cpu_to_be16(ethertype) ==
> +			    rx->sdata->control_port_protocol)
> +				return RX_CONTINUE;
> +		}
>  		return RX_DROP_MONITOR;
> +	}

It might be easier to read to split the outer condition now into
data/ps-poll?

Anyway, didn't pay attention if this got applied -- seems fine.
 
johannes


  reply	other threads:[~2011-08-29 13:32 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-17 12:18 [PATCH v3 1/2] mac80211: refactor sta_info_insert_rcu to 3 main stages Guy Eilam
2011-08-17 12:18 ` [PATCH v3 2/2] mac80211: fix race condition between assoc_done and first EAP packet Guy Eilam
2011-08-29 13:32   ` Johannes Berg [this message]
2011-10-25 15:55   ` Jouni Malinen

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=1314624726.8959.8.camel@jlt3.sipsolutions.net \
    --to=johannes@sipsolutions.net \
    --cc=guy@wizery.com \
    --cc=linux-wireless@vger.kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox