On Thu, 2009-11-19 at 00:56 +0100, Johannes Berg wrote: > - if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN && !sdata->use_4addr && > - ieee80211_has_a4(hdr->frame_control)) > + if (ieee80211_has_a4(hdr->frame_control) && > + sdata->vif.type == NL80211_IFTYPE_AP_VLAN && !sdata->u.vlan.sta) > return -1; > - if (sdata->use_4addr && is_multicast_ether_addr(hdr->addr1)) > + > + if (is_multicast_ether_addr(hdr->addr1) && > + ((sdata->vif.type == NL80211_IFTYPE_AP_VLAN && !sdata->u.vlan.sta) || > + (sdata->vif.type == NL80211_IFTYPE_STATION && !sdata->u.mgd.use_4addr))) > return -1; This is wrong, of course. Felix, can you explain what this actually does? johannes
Attachment:
signature.asc
Description: This is a digitally signed message part