Hi,

> > +   shost = wifi_hdr->addr2;
> > +   if (fc & IEEE80211_FCTL_FROMDS)
> > +           shost = wifi_hdr->addr3;
> > +   else if (fc & IEEE80211_FCTL_TODS)
> > +           shost = wifi_hdr->addr4;
> > +
> > +   dhost = wifi_hdr->addr1;
> > +   if (fc & IEEE80211_FCTL_TODS)
> > +           dhost = wifi_hdr->addr3;
> 
> What would happen if you happened to pick up a WDS packet? Four
> addresses in the packet. Do we see sensible addresses?

we should - that is what addr4 is used for but I did not test it. Let me know 
if it does not work for you.


> > +
> > +   hdr_len = 24;
> > +   if ((fc & IEEE80211_FCTL_FROMDS) && (fc & IEEE80211_FCTL_TODS))
> > +           hdr_len = 30;
> 
> Again, WDS? We are now a few bytes out when decoding the rest of the
> packet.

I don't understand what you are trying to say here. Are you sure it is not 
working or are you worried that WDS might not work ? If you have doubts please 
explain them in more detail.

Thanks,
Marek

Reply via email to