openwrt/package/kernel/rtl8812au-ct/patches/002-vendor_command_policy.patch
Hauke Mehrtens 397faa6e7c rtl8812au-ct: Add vendor command policy
Fixes: 928e893a11 ("mac80211: Update to version 5.3-rc4-1")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-08-18 14:06:24 +02:00

157 lines
5.0 KiB
Diff

mac80211 from kernel 5.3 and later checks the new policy attribute.
As this driver does not define any policies and does strange things,
just tell mac80211 to ignore the policies.
--- a/os_dep/linux/rtw_cfgvendor.c
+++ b/os_dep/linux/rtw_cfgvendor.c
@@ -1173,7 +1173,8 @@ static const struct wiphy_vendor_command
.subcmd = BRCM_VENDOR_SCMD_PRIV_STR
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_priv_string_handler
+ .doit = wl_cfgvendor_priv_string_handler,
+ .policy = VENDOR_CMD_RAW_DATA,
},
#if defined(GSCAN_SUPPORT) && 0
{
@@ -1182,7 +1183,8 @@ static const struct wiphy_vendor_command
.subcmd = GSCAN_SUBCMD_GET_CAPABILITIES
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_gscan_get_capabilities
+ .doit = wl_cfgvendor_gscan_get_capabilities,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1190,7 +1192,8 @@ static const struct wiphy_vendor_command
.subcmd = GSCAN_SUBCMD_SET_CONFIG
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_set_scan_cfg
+ .doit = wl_cfgvendor_set_scan_cfg,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1198,7 +1201,8 @@ static const struct wiphy_vendor_command
.subcmd = GSCAN_SUBCMD_SET_SCAN_CONFIG
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_set_batch_scan_cfg
+ .doit = wl_cfgvendor_set_batch_scan_cfg,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1206,7 +1210,8 @@ static const struct wiphy_vendor_command
.subcmd = GSCAN_SUBCMD_ENABLE_GSCAN
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_initiate_gscan
+ .doit = wl_cfgvendor_initiate_gscan,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1214,7 +1219,8 @@ static const struct wiphy_vendor_command
.subcmd = GSCAN_SUBCMD_ENABLE_FULL_SCAN_RESULTS
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_enable_full_scan_result
+ .doit = wl_cfgvendor_enable_full_scan_result,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1222,7 +1228,8 @@ static const struct wiphy_vendor_command
.subcmd = GSCAN_SUBCMD_SET_HOTLIST
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_hotlist_cfg
+ .doit = wl_cfgvendor_hotlist_cfg,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1230,7 +1237,8 @@ static const struct wiphy_vendor_command
.subcmd = GSCAN_SUBCMD_SET_SIGNIFICANT_CHANGE_CONFIG
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_significant_change_cfg
+ .doit = wl_cfgvendor_significant_change_cfg,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1238,7 +1246,8 @@ static const struct wiphy_vendor_command
.subcmd = GSCAN_SUBCMD_GET_SCAN_RESULTS
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_gscan_get_batch_results
+ .doit = wl_cfgvendor_gscan_get_batch_results,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1246,7 +1255,8 @@ static const struct wiphy_vendor_command
.subcmd = GSCAN_SUBCMD_GET_CHANNEL_LIST
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_gscan_get_channel_list
+ .doit = wl_cfgvendor_gscan_get_channel_list,
+ .policy = VENDOR_CMD_RAW_DATA,
},
#endif /* GSCAN_SUPPORT */
#if defined(RTT_SUPPORT) && 0
@@ -1256,7 +1266,8 @@ static const struct wiphy_vendor_command
.subcmd = RTT_SUBCMD_SET_CONFIG
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_rtt_set_config
+ .doit = wl_cfgvendor_rtt_set_config,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1264,7 +1275,8 @@ static const struct wiphy_vendor_command
.subcmd = RTT_SUBCMD_CANCEL_CONFIG
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_rtt_cancel_config
+ .doit = wl_cfgvendor_rtt_cancel_config,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1272,7 +1284,8 @@ static const struct wiphy_vendor_command
.subcmd = RTT_SUBCMD_GETCAPABILITY
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = wl_cfgvendor_rtt_get_capability
+ .doit = wl_cfgvendor_rtt_get_capability,
+ .policy = VENDOR_CMD_RAW_DATA,
},
#endif /* RTT_SUPPORT */
{
@@ -1281,7 +1294,8 @@ static const struct wiphy_vendor_command
.subcmd = ANDR_WIFI_SUBCMD_GET_FEATURE_SET
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = rtw_cfgvendor_get_feature_set
+ .doit = rtw_cfgvendor_get_feature_set,
+ .policy = VENDOR_CMD_RAW_DATA,
},
{
{
@@ -1289,7 +1303,8 @@ static const struct wiphy_vendor_command
.subcmd = ANDR_WIFI_SUBCMD_GET_FEATURE_SET_MATRIX
},
.flags = WIPHY_VENDOR_CMD_NEED_WDEV | WIPHY_VENDOR_CMD_NEED_NETDEV,
- .doit = rtw_cfgvendor_get_feature_set_matrix
+ .doit = rtw_cfgvendor_get_feature_set_matrix,
+ .policy = VENDOR_CMD_RAW_DATA,
}
};