Эх сурвалжийг харах

rt2x00: Use addr_mask to disallow invalid MAC addresses in mutli-bssid mode

Reported-by: Petr Stetiar <ynezz@true.cz>
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Helmut Schaa 12 жил өмнө
parent
commit
6c50f9459e

+ 7 - 0
drivers/net/wireless/rt2x00/rt2x00dev.c

@@ -1182,6 +1182,13 @@ int rt2x00lib_probe_dev(struct rt2x00_dev *rt2x00dev)
 	 */
 	 */
 	rt2x00dev->hw->vif_data_size = sizeof(struct rt2x00_intf);
 	rt2x00dev->hw->vif_data_size = sizeof(struct rt2x00_intf);
 
 
+	/*
+	 * rt2x00 devices can only use the last n bits of the MAC address
+	 * for virtual interfaces.
+	 */
+	rt2x00dev->hw->wiphy->addr_mask[ETH_ALEN - 1] =
+		(rt2x00dev->ops->max_ap_intf - 1);
+
 	/*
 	/*
 	 * Determine which operating modes are supported, all modes
 	 * Determine which operating modes are supported, all modes
 	 * which require beaconing, depend on the availability of
 	 * which require beaconing, depend on the availability of