Disable mgmt frame sending in if_rsu.
The firmware in this NIC sends management frames. So far I'm not sure which ones it handles and which ones it doesn't handle - but this is what openbsd does. The association messages are handled by the firmware; the key negotiation for 802.1x and WPA are done as raw frames, not management frames. This successfully allows it to associate to my home networks whereas it didn't work beforehand. Tested: * RTL8712, cut 3, STA mode TODO: * The firmware does send a join response with a status code; that should be logged in a more obvious way to assist with debugging. Ie, the firmware is the thing that is saying "couldn't join, sorry!", not net80211.
This commit is contained in:
parent
a44aa8e030
commit
cf52bbe053
@ -298,6 +298,13 @@ rsu_match(device_t self)
|
||||
return (usbd_lookup_id_by_uaa(rsu_devs, sizeof(rsu_devs), uaa));
|
||||
}
|
||||
|
||||
static int
|
||||
rsu_send_mgmt(struct ieee80211_node *ni, int type, int arg)
|
||||
{
|
||||
|
||||
return (ENOTSUP);
|
||||
}
|
||||
|
||||
static int
|
||||
rsu_attach(device_t self)
|
||||
{
|
||||
@ -398,6 +405,7 @@ rsu_attach(device_t self)
|
||||
ic->ic_update_mcast = rsu_update_mcast;
|
||||
ic->ic_parent = rsu_parent;
|
||||
ic->ic_transmit = rsu_transmit;
|
||||
ic->ic_send_mgmt = rsu_send_mgmt;
|
||||
|
||||
ieee80211_radiotap_attach(ic, &sc->sc_txtap.wt_ihdr,
|
||||
sizeof(sc->sc_txtap), RSU_TX_RADIOTAP_PRESENT,
|
||||
|
Loading…
Reference in New Issue
Block a user