nl80211: Fix NL80211_CMD_FRAME to not try offchannel without driver support
The offchanok parameter is hardcoded to one in number of paths and that added NL80211_ATTR_OFFCHANNEL_TX_OK attribute to NL80211_CMD_FRAME unconditional. cfg80211 rejects this with EINVAL if the driver does not indicate support for offchannel TX. Fix this by not requesting offchannel TX depending on driver capabilities. Remain-on-channel operation was used for those cases anyway, so the additional attribute was not really needed for these in the first place. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
e91829f9ac
commit
b9fd8ce804
1 changed files with 1 additions and 1 deletions
|
@ -7876,7 +7876,7 @@ static int nl80211_send_frame_cmd(struct i802_bss *bss,
|
|||
NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_FREQ, freq);
|
||||
if (wait)
|
||||
NLA_PUT_U32(msg, NL80211_ATTR_DURATION, wait);
|
||||
if (offchanok)
|
||||
if (offchanok && (drv->capa.flags & WPA_DRIVER_FLAGS_OFFCHANNEL_TX))
|
||||
NLA_PUT_FLAG(msg, NL80211_ATTR_OFFCHANNEL_TX_OK);
|
||||
if (no_cck)
|
||||
NLA_PUT_FLAG(msg, NL80211_ATTR_TX_NO_CCK_RATE);
|
||||
|
|
Loading…
Reference in a new issue