While playing with .auth/.deauth/.assoc/.disassoc versus .connect/.disconnect in libertas, I notices two things that makes things a bit hard for me. BSS list driven vs. not ----------------------- .auth/.assoc provides the BSSID to connect to. If cfg80211's BSS list is empty, it even will do a scan before calling .auth/.assoc. However, for the .connect method this isn't true. .connect just get's the SSID. My problem here is that the CMD_802_11_ASSOCIATE command for the libertas' firmware wants the AP's BSSID to connect to. For now, I do this: if (sme->bssid) { bss = cfg80211_get_bss(wiphy, sme->channel, sme->bssid, sme->ssid, sme->ssid_len, WLAN_CAPABILITY_ESS, WLAN_CAPABILITY_ESS); } else { ret = -ENOTSUPP; goto done; } This makes the "iw connect" command only work if an "iw scan" did just take place and I provide an BSS on the command line. So maybe net/wireless/sme.c should be generalized ? BSSID for .deauth/.disassoc vs. .disconnect ------------------------------------------- Both the .deauth and .disassoc get the cfg80211_bss entry to deauth / disassociate against. .disconnect doesn't get this. But I need the BSSID for the CMD_802_11_DISASSOCIATE command, so I need to store the BSSID locally in priv->XXX. But I'm quite sure that cfg80211 already knows to which bssid I'm connected (see "iw xxx link"), so it's not nice that I need to store this twice. -- http://www.holgerschurig.de -- 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