On Fri, Aug 17, 2007 at 02:52:56AM +0200, Johannes Berg wrote: > On Mon, 2007-08-06 at 13:05 -0400, John W. Linville wrote: > > > --- a/net/mac80211/ieee80211.c > > +++ b/net/mac80211/ieee80211.c > > @@ -3030,9 +3030,10 @@ ieee80211_rx_h_data(struct ieee80211_txrx_data *rx) > > memcpy(dst, hdr->addr1, ETH_ALEN); > > memcpy(src, hdr->addr3, ETH_ALEN); > > > > - if (sdata->type != IEEE80211_IF_TYPE_STA) { > > + if (sdata->type != IEEE80211_IF_TYPE_STA || > > + (is_multicast_ether_addr(dst) && > > + !compare_ether_addr(src, dev->dev_addr))) > > return TXRX_DROP; > > I can confirm that this works (applies if you s/ieee80211.c/rx.c/) for > IPv6 link local addresses, and it's definitely the right thing to do > here. Yes, seems so. FWIW, this patch is in later Fedora kernels. Unfortunately (due to the ieee80211.c -> rx.c issue you mentioned) applying this to 2.6.23 conflicts with patches already queued for 2.6.24. Since my experiments show that git doesn't help much in this instance, I'll need to work something out with Dave M. if we are to get this into 2.6.23. If nothing else, I suppose we can just wait for 2.6.23 and send this patch to -stable. Would that burn anyone's biscuits? John -- John W. Linville linville@xxxxxxxxxxxxx - 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