Răsfoiți Sursa

mac80211: fix station lookup issues

SVN-Revision: 31539
Felix Fietkau 13 ani în urmă
părinte
comite
897abd824f
1 a modificat fișierele cu 15 adăugiri și 0 ștergeri
  1. 15 0
      package/mac80211/patches/300-pending_work.patch

+ 15 - 0
package/mac80211/patches/300-pending_work.patch

@@ -928,3 +928,18 @@
  		tx->sta = sta_info_get_bss(sdata, hdr->addr1);
  	}
  	if (!tx->sta)
+--- a/net/wireless/scan.c
++++ b/net/wireless/scan.c
+@@ -378,7 +378,11 @@ static int cmp_bss_core(struct cfg80211_
+ 			       b->len_information_elements);
+ 	}
+ 
+-	return compare_ether_addr(a->bssid, b->bssid);
++	/*
++	 * we can't use compare_ether_addr here since we need a < > operator.
++	 * The binary return value of compare_ether_addr isn't enough
++	 */
++	return memcmp(a->bssid, b->bssid, sizeof(a->bssid));
+ }
+ 
+ static int cmp_bss(struct cfg80211_bss *a,