This adds the necessary capabilities in nl80211 to allow drivers to assign a cookie to control port TX frames (returned via extack in the netlink ACK message of the command) and then later report the frame's status.
Showing the changes to include/uapi (1 of 7 files). Show all
Unified · Split
| @@ -1164,6 +1164,12 @@ · 1163 unmodified lines | |||
| 1164 | * dropped because it did not include a valid MME MIC while beacon | 1164 | * dropped because it did not include a valid MME MIC while beacon |
| 1165 | * protection was enabled (BIGTK configured in station mode). | 1165 | * protection was enabled (BIGTK configured in station mode). |
| 1166 | * | 1166 | * |
| 1167 | * @NL80211_CMD_CONTROL_PORT_FRAME_TX_STATUS: Report TX status of a control | ||
| 1168 | * port frame transmitted with %NL80211_CMD_CONTROL_PORT_FRAME. | ||
| 1169 | * %NL80211_ATTR_COOKIE identifies the TX command and %NL80211_ATTR_FRAME | ||
| 1170 | * includes the contents of the frame. %NL80211_ATTR_ACK flag is included | ||
| 1171 | * if the recipient acknowledged the frame. | ||
| 1172 | * | ||
| 1167 | * @NL80211_CMD_MAX: highest used command number | 1173 | * @NL80211_CMD_MAX: highest used command number |
| 1168 | * @__NL80211_CMD_AFTER_LAST: internal use | 1174 | * @__NL80211_CMD_AFTER_LAST: internal use |
| 1169 | */ | 1175 | */ |
| @@ -1392,6 +1398,8 @@ enum nl80211_commands { · 222 unmodified lines | |||
| 1392 | 1398 | ||
| 1393 | NL80211_CMD_UNPROT_BEACON, | 1399 | NL80211_CMD_UNPROT_BEACON, |
| 1394 | 1400 | ||
| 1401 | NL80211_CMD_CONTROL_PORT_FRAME_TX_STATUS, | ||
| 1402 | |||
| 1395 | /* add new commands above here */ | 1403 | /* add new commands above here */ |
| 1396 | 1404 | ||
| 1397 | /* used to define NL80211_CMD_MAX below */ | 1405 | /* used to define NL80211_CMD_MAX below */ |
| @@ -5729,6 +5737,9 @@ enum nl80211_feature_flags { · 4331 unmodified lines | |||
| 5729 | * report %NL80211_ATTR_SCAN_FREQ_KHZ, %NL80211_SCAN_FLAG_FREQ_KHZ must be | 5737 | * report %NL80211_ATTR_SCAN_FREQ_KHZ, %NL80211_SCAN_FLAG_FREQ_KHZ must be |
| 5730 | * included in the scan request. | 5738 | * included in the scan request. |
| 5731 | * | 5739 | * |
| 5740 | * @NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_TX_STATUS: The driver | ||
| 5741 | * can report tx status for control port over nl80211 tx operations. | ||
| 5742 | * | ||
| 5732 | * @NUM_NL80211_EXT_FEATURES: number of extended features. | 5743 | * @NUM_NL80211_EXT_FEATURES: number of extended features. |
| 5733 | * @MAX_NL80211_EXT_FEATURES: highest extended feature index. | 5744 | * @MAX_NL80211_EXT_FEATURES: highest extended feature index. |
| 5734 | */ | 5745 | */ |
| @@ -5783,6 +5794,7 @@ enum nl80211_ext_feature_index { · 48 unmodified lines | |||
| 5783 | NL80211_EXT_FEATURE_MULTICAST_REGISTRATIONS, | 5794 | NL80211_EXT_FEATURE_MULTICAST_REGISTRATIONS, |
| 5784 | NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT, | 5795 | NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT, |
| 5785 | NL80211_EXT_FEATURE_SCAN_FREQ_KHZ, | 5796 | NL80211_EXT_FEATURE_SCAN_FREQ_KHZ, |
| 5797 | NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_TX_STATUS, | ||
| 5786 | 5798 | ||
| 5787 | /* add new features before the definition below */ | 5799 | /* add new features before the definition below */ |
| 5788 | NUM_NL80211_EXT_FEATURES, | 5800 | NUM_NL80211_EXT_FEATURES, |