]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - net/wireless/nl80211.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[linux.git] / net / wireless / nl80211.c
index 47e30a58566c2817696655212a8da4c5fc00f00e..e7ee18ab6cb7143d2ff826644ffb9c980d25e6bd 100644 (file)
@@ -13368,7 +13368,6 @@ static const struct genl_ops nl80211_ops[] = {
                .doit = nl80211_get_wiphy,
                .dumpit = nl80211_dump_wiphy,
                .done = nl80211_dump_wiphy_done,
-               .policy = nl80211_policy,
                /* can be retrieved by unprivileged users */
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13376,7 +13375,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_WIPHY,
                .doit = nl80211_set_wiphy,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_RTNL,
        },
@@ -13384,7 +13382,6 @@ static const struct genl_ops nl80211_ops[] = {
                .cmd = NL80211_CMD_GET_INTERFACE,
                .doit = nl80211_get_interface,
                .dumpit = nl80211_dump_interface,
-               .policy = nl80211_policy,
                /* can be retrieved by unprivileged users */
                .internal_flags = NL80211_FLAG_NEED_WDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13392,7 +13389,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_INTERFACE,
                .doit = nl80211_set_interface,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13400,7 +13396,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_NEW_INTERFACE,
                .doit = nl80211_new_interface,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13408,7 +13403,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DEL_INTERFACE,
                .doit = nl80211_del_interface,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13416,7 +13410,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_GET_KEY,
                .doit = nl80211_get_key,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13424,7 +13417,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_KEY,
                .doit = nl80211_set_key,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL |
@@ -13433,7 +13425,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_NEW_KEY,
                .doit = nl80211_new_key,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL |
@@ -13442,14 +13433,12 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DEL_KEY,
                .doit = nl80211_del_key,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
        },
        {
                .cmd = NL80211_CMD_SET_BEACON,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .doit = nl80211_set_beacon,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
@@ -13457,7 +13446,6 @@ static const struct genl_ops nl80211_ops[] = {
        },
        {
                .cmd = NL80211_CMD_START_AP,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .doit = nl80211_start_ap,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
@@ -13465,7 +13453,6 @@ static const struct genl_ops nl80211_ops[] = {
        },
        {
                .cmd = NL80211_CMD_STOP_AP,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .doit = nl80211_stop_ap,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
@@ -13475,14 +13462,12 @@ static const struct genl_ops nl80211_ops[] = {
                .cmd = NL80211_CMD_GET_STATION,
                .doit = nl80211_get_station,
                .dumpit = nl80211_dump_station,
-               .policy = nl80211_policy,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
        },
        {
                .cmd = NL80211_CMD_SET_STATION,
                .doit = nl80211_set_station,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13490,7 +13475,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_NEW_STATION,
                .doit = nl80211_new_station,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13498,7 +13482,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DEL_STATION,
                .doit = nl80211_del_station,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13507,7 +13490,6 @@ static const struct genl_ops nl80211_ops[] = {
                .cmd = NL80211_CMD_GET_MPATH,
                .doit = nl80211_get_mpath,
                .dumpit = nl80211_dump_mpath,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13516,7 +13498,6 @@ static const struct genl_ops nl80211_ops[] = {
                .cmd = NL80211_CMD_GET_MPP,
                .doit = nl80211_get_mpp,
                .dumpit = nl80211_dump_mpp,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13524,7 +13505,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_MPATH,
                .doit = nl80211_set_mpath,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13532,7 +13512,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_NEW_MPATH,
                .doit = nl80211_new_mpath,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13540,7 +13519,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DEL_MPATH,
                .doit = nl80211_del_mpath,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13548,7 +13526,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_BSS,
                .doit = nl80211_set_bss,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13557,7 +13534,6 @@ static const struct genl_ops nl80211_ops[] = {
                .cmd = NL80211_CMD_GET_REG,
                .doit = nl80211_get_reg_do,
                .dumpit = nl80211_get_reg_dump,
-               .policy = nl80211_policy,
                .internal_flags = NL80211_FLAG_NEED_RTNL,
                /* can be retrieved by unprivileged users */
        },
@@ -13565,7 +13541,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_REG,
                .doit = nl80211_set_reg,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_RTNL,
        },
@@ -13573,19 +13548,16 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_REQ_SET_REG,
                .doit = nl80211_req_set_reg,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
        },
        {
                .cmd = NL80211_CMD_RELOAD_REGDB,
                .doit = nl80211_reload_regdb,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
        },
        {
                .cmd = NL80211_CMD_GET_MESH_CONFIG,
                .doit = nl80211_get_mesh_config,
-               .policy = nl80211_policy,
                /* can be retrieved by unprivileged users */
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13593,7 +13565,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_MESH_CONFIG,
                .doit = nl80211_update_mesh_config,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13601,7 +13572,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_TRIGGER_SCAN,
                .doit = nl80211_trigger_scan,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13609,20 +13579,17 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_ABORT_SCAN,
                .doit = nl80211_abort_scan,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
        },
        {
                .cmd = NL80211_CMD_GET_SCAN,
-               .policy = nl80211_policy,
                .dumpit = nl80211_dump_scan,
        },
        {
                .cmd = NL80211_CMD_START_SCHED_SCAN,
                .doit = nl80211_start_sched_scan,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13630,7 +13597,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_STOP_SCHED_SCAN,
                .doit = nl80211_stop_sched_scan,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13638,7 +13604,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_AUTHENTICATE,
                .doit = nl80211_authenticate,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL |
@@ -13647,7 +13612,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_ASSOCIATE,
                .doit = nl80211_associate,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL |
@@ -13656,7 +13620,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DEAUTHENTICATE,
                .doit = nl80211_deauthenticate,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13664,7 +13627,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DISASSOCIATE,
                .doit = nl80211_disassociate,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13672,7 +13634,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_JOIN_IBSS,
                .doit = nl80211_join_ibss,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13680,7 +13641,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_LEAVE_IBSS,
                .doit = nl80211_leave_ibss,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13690,7 +13650,6 @@ static const struct genl_ops nl80211_ops[] = {
                .cmd = NL80211_CMD_TESTMODE,
                .doit = nl80211_testmode_do,
                .dumpit = nl80211_testmode_dump,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13699,7 +13658,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_CONNECT,
                .doit = nl80211_connect,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL |
@@ -13708,7 +13666,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_UPDATE_CONNECT_PARAMS,
                .doit = nl80211_update_connect_params,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL |
@@ -13717,7 +13674,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DISCONNECT,
                .doit = nl80211_disconnect,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13725,20 +13681,17 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_WIPHY_NETNS,
                .doit = nl80211_wiphy_netns,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL,
        },
        {
                .cmd = NL80211_CMD_GET_SURVEY,
-               .policy = nl80211_policy,
                .dumpit = nl80211_dump_survey,
        },
        {
                .cmd = NL80211_CMD_SET_PMKSA,
                .doit = nl80211_setdel_pmksa,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL |
@@ -13747,7 +13700,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DEL_PMKSA,
                .doit = nl80211_setdel_pmksa,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13755,7 +13707,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_FLUSH_PMKSA,
                .doit = nl80211_flush_pmksa,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13763,7 +13714,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_REMAIN_ON_CHANNEL,
                .doit = nl80211_remain_on_channel,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13771,7 +13721,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_CANCEL_REMAIN_ON_CHANNEL,
                .doit = nl80211_cancel_remain_on_channel,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13779,7 +13728,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_TX_BITRATE_MASK,
                .doit = nl80211_set_tx_bitrate_mask,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13787,7 +13735,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_REGISTER_FRAME,
                .doit = nl80211_register_mgmt,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13795,7 +13742,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_FRAME,
                .doit = nl80211_tx_mgmt,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13803,7 +13749,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_FRAME_WAIT_CANCEL,
                .doit = nl80211_tx_mgmt_cancel_wait,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13811,7 +13756,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_POWER_SAVE,
                .doit = nl80211_set_power_save,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13819,7 +13763,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_GET_POWER_SAVE,
                .doit = nl80211_get_power_save,
-               .policy = nl80211_policy,
                /* can be retrieved by unprivileged users */
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13827,7 +13770,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_CQM,
                .doit = nl80211_set_cqm,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13835,7 +13777,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_CHANNEL,
                .doit = nl80211_set_channel,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13843,7 +13784,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_WDS_PEER,
                .doit = nl80211_set_wds_peer,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13851,7 +13791,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_JOIN_MESH,
                .doit = nl80211_join_mesh,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13859,7 +13798,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_LEAVE_MESH,
                .doit = nl80211_leave_mesh,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13867,7 +13805,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_JOIN_OCB,
                .doit = nl80211_join_ocb,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13875,7 +13812,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_LEAVE_OCB,
                .doit = nl80211_leave_ocb,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13884,7 +13820,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_GET_WOWLAN,
                .doit = nl80211_get_wowlan,
-               .policy = nl80211_policy,
                /* can be retrieved by unprivileged users */
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13892,7 +13827,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_WOWLAN,
                .doit = nl80211_set_wowlan,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13901,7 +13835,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_REKEY_OFFLOAD,
                .doit = nl80211_set_rekey_data,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL |
@@ -13910,7 +13843,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_TDLS_MGMT,
                .doit = nl80211_tdls_mgmt,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13918,7 +13850,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_TDLS_OPER,
                .doit = nl80211_tdls_oper,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13926,7 +13857,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_UNEXPECTED_FRAME,
                .doit = nl80211_register_unexpected_frame,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13934,7 +13864,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_PROBE_CLIENT,
                .doit = nl80211_probe_client,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13942,7 +13871,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_REGISTER_BEACONS,
                .doit = nl80211_register_beacons,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13950,7 +13878,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_NOACK_MAP,
                .doit = nl80211_set_noack_map,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13958,7 +13885,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_START_P2P_DEVICE,
                .doit = nl80211_start_p2p_device,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13966,7 +13892,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_STOP_P2P_DEVICE,
                .doit = nl80211_stop_p2p_device,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13974,7 +13899,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_START_NAN,
                .doit = nl80211_start_nan,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13982,7 +13906,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_STOP_NAN,
                .doit = nl80211_stop_nan,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13990,7 +13913,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_ADD_NAN_FUNCTION,
                .doit = nl80211_nan_add_func,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -13998,7 +13920,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DEL_NAN_FUNCTION,
                .doit = nl80211_nan_del_func,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14006,7 +13927,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_CHANGE_NAN_CONFIG,
                .doit = nl80211_nan_change_config,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14014,7 +13934,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_MCAST_RATE,
                .doit = nl80211_set_mcast_rate,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14022,7 +13941,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_MAC_ACL,
                .doit = nl80211_set_mac_acl,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14030,7 +13948,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_RADAR_DETECT,
                .doit = nl80211_start_radar_detection,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14038,12 +13955,10 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_GET_PROTOCOL_FEATURES,
                .doit = nl80211_get_protocol_features,
-               .policy = nl80211_policy,
        },
        {
                .cmd = NL80211_CMD_UPDATE_FT_IES,
                .doit = nl80211_update_ft_ies,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14051,7 +13966,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_CRIT_PROTOCOL_START,
                .doit = nl80211_crit_protocol_start,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14059,7 +13973,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_CRIT_PROTOCOL_STOP,
                .doit = nl80211_crit_protocol_stop,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14067,14 +13980,12 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_GET_COALESCE,
                .doit = nl80211_get_coalesce,
-               .policy = nl80211_policy,
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL,
        },
        {
                .cmd = NL80211_CMD_SET_COALESCE,
                .doit = nl80211_set_coalesce,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14082,7 +13993,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_CHANNEL_SWITCH,
                .doit = nl80211_channel_switch,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14091,7 +14001,6 @@ static const struct genl_ops nl80211_ops[] = {
                .cmd = NL80211_CMD_VENDOR,
                .doit = nl80211_vendor_cmd,
                .dumpit = nl80211_vendor_cmd_dump,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WIPHY |
                                  NL80211_FLAG_NEED_RTNL |
@@ -14100,7 +14009,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_QOS_MAP,
                .doit = nl80211_set_qos_map,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14108,7 +14016,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_ADD_TX_TS,
                .doit = nl80211_add_tx_ts,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14116,7 +14023,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DEL_TX_TS,
                .doit = nl80211_del_tx_ts,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14124,7 +14030,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_TDLS_CHANNEL_SWITCH,
                .doit = nl80211_tdls_channel_switch,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14132,7 +14037,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_TDLS_CANCEL_CHANNEL_SWITCH,
                .doit = nl80211_tdls_cancel_channel_switch,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14140,7 +14044,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_MULTICAST_TO_UNICAST,
                .doit = nl80211_set_multicast_to_unicast,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14148,7 +14051,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_SET_PMK,
                .doit = nl80211_set_pmk,
-               .policy = nl80211_policy,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL |
                                  NL80211_FLAG_CLEAR_SKB,
@@ -14156,14 +14058,12 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_DEL_PMK,
                .doit = nl80211_del_pmk,
-               .policy = nl80211_policy,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
        },
        {
                .cmd = NL80211_CMD_EXTERNAL_AUTH,
                .doit = nl80211_external_auth,
-               .policy = nl80211_policy,
                .flags = GENL_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14171,7 +14071,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_CONTROL_PORT_FRAME,
                .doit = nl80211_tx_control_port,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14179,14 +14078,12 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_GET_FTM_RESPONDER_STATS,
                .doit = nl80211_get_ftm_responder_stats,
-               .policy = nl80211_policy,
                .internal_flags = NL80211_FLAG_NEED_NETDEV |
                                  NL80211_FLAG_NEED_RTNL,
        },
        {
                .cmd = NL80211_CMD_PEER_MEASUREMENT_START,
                .doit = nl80211_pmsr_start,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_WDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14194,7 +14091,6 @@ static const struct genl_ops nl80211_ops[] = {
        {
                .cmd = NL80211_CMD_NOTIFY_RADAR,
                .doit = nl80211_notify_radar_detection,
-               .policy = nl80211_policy,
                .flags = GENL_UNS_ADMIN_PERM,
                .internal_flags = NL80211_FLAG_NEED_NETDEV_UP |
                                  NL80211_FLAG_NEED_RTNL,
@@ -14206,6 +14102,7 @@ static struct genl_family nl80211_fam __ro_after_init = {
        .hdrsize = 0,                   /* no private header */
        .version = 1,                   /* no particular meaning now */
        .maxattr = NL80211_ATTR_MAX,
+       .policy = nl80211_policy,
        .netnsok = true,
        .pre_doit = nl80211_pre_doit,
        .post_doit = nl80211_post_doit,