Search Linux Wireless

Re: [PATCH] b43: Fix rxheader channel parsing

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

 



Michael Buesch wrote:
> This patch fixes the parsing of the RX data header channel field.
> 
> The current code parses the header incorrectly and passes a wrong
> channel number and frequency for each frame to mac80211.
> The FIXMEs added by this patch don't matter for now as the code
> where they live won't get executed anyway. They will be fixed later.
> 
> Signed-off-by: Michael Buesch <mb@xxxxxxxxx>
> 
> ---
> 
> John, as this is a bugfix, it should go into 2.6.24 if still possible.
> 
> Index: wireless-2.6/drivers/net/wireless/b43/xmit.c
> ===================================================================
> --- wireless-2.6.orig/drivers/net/wireless/b43/xmit.c	2007-12-30 20:30:03.000000000 +0100
> +++ wireless-2.6/drivers/net/wireless/b43/xmit.c	2008-01-02 18:13:15.000000000 +0100
> @@ -549,21 +549,32 @@ void b43_rx(struct b43_wldev *dev, struc
>  	switch (chanstat & B43_RX_CHAN_PHYTYPE) {
>  	case B43_PHYTYPE_A:
>  		status.phymode = MODE_IEEE80211A;
> -		status.freq = chanid;
> -		status.channel = b43_freq_to_channel_a(chanid);
> -		break;
> -	case B43_PHYTYPE_B:
> -		status.phymode = MODE_IEEE80211B;
> -		status.freq = chanid + 2400;
> -		status.channel = b43_freq_to_channel_bg(chanid + 2400);
> +		B43_WARN_ON(1);
> +		/* FIXME: We don't really know which value the "chanid" contains.
> +		 *        So the following assignment might be wrong. */
> +		status.channel = chanid;
> +		status.freq = b43_channel_to_freq_5ghz(status.channel);
>  		break;

Shouldn't you just drop this case? No B PHY devices will ever use b43 and the default branch will
issue the WARN_ON anyway.

Larry

-
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