diff options
author | Johannes Berg <johannes.berg@intel.com> | 2017-09-13 17:07:22 +0300 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2017-10-11 14:04:15 +0300 |
commit | 1ea4ff3e9f0b8d53e680a2bb9e8e644bf03aeb4d (patch) | |
tree | 798b7b73a9bf61aaf2c1ef9c5265d5581f01ef2b /net/wireless/nl80211.c | |
parent | 007f6c5e6eb45c81ee89368a5f226572ae638831 (diff) | |
download | linux-1ea4ff3e9f0b8d53e680a2bb9e8e644bf03aeb4d.tar.xz |
cfg80211: support reloading regulatory database
If the regulatory database is loaded, and then updated, it may
be necessary to reload it. Add an nl80211 command to do this.
Note that this just reloads the database, it doesn't re-apply
the rules from it immediately.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless/nl80211.c')
-rw-r--r-- | net/wireless/nl80211.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index 5129342151e6..67a03f2885a4 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c @@ -5678,6 +5678,11 @@ static int nl80211_req_set_reg(struct sk_buff *skb, struct genl_info *info) } } +static int nl80211_reload_regdb(struct sk_buff *skb, struct genl_info *info) +{ + return reg_reload_regdb(); +} + static int nl80211_get_mesh_config(struct sk_buff *skb, struct genl_info *info) { @@ -12709,6 +12714,12 @@ static const struct genl_ops nl80211_ops[] = { .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, |