diff options
Diffstat (limited to 'package/mac80211/patches/802-mac80211_cfg_fix.patch')
-rw-r--r-- | package/mac80211/patches/802-mac80211_cfg_fix.patch | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/package/mac80211/patches/802-mac80211_cfg_fix.patch b/package/mac80211/patches/802-mac80211_cfg_fix.patch new file mode 100644 index 0000000000..0ed0b6bd46 --- /dev/null +++ b/package/mac80211/patches/802-mac80211_cfg_fix.patch @@ -0,0 +1,23 @@ +--- a/net/mac80211/cfg.c ++++ b/net/mac80211/cfg.c +@@ -97,9 +97,6 @@ static int ieee80211_change_iface(struct + params->mesh_id_len, + params->mesh_id); + +- if (sdata->vif.type != NL80211_IFTYPE_MONITOR || !flags) +- return 0; +- + if (type == NL80211_IFTYPE_AP_VLAN && + params && params->use_4addr == 0) + rcu_assign_pointer(sdata->u.vlan.sta, NULL); +@@ -107,7 +104,9 @@ static int ieee80211_change_iface(struct + params && params->use_4addr >= 0) + sdata->u.mgd.use_4addr = params->use_4addr; + +- sdata->u.mntr_flags = *flags; ++ if (sdata->vif.type == NL80211_IFTYPE_MONITOR && flags) ++ sdata->u.mntr_flags = *flags; ++ + return 0; + } + |